作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个显示卡片 View 的 fragment ,类似于仪表板。每个卡片 View 都应替换仪表板 fragment 并在单击时调用自己的 fragment ,但我似乎无法做到。我尝试了以下方法:
imageId.Click += delegate {
((FragmentActivity)Activity).ShowFragment(SmokeSensor);
};
Activity 中的方法:
public void ShowFragment(SupportFragment fragment) {
var transaction = SupportFragmentManager.BeginTransaction();
connectionStatus.Visibility = ViewStates.Gone;
if (!ConnectionDetector.IsConnected(this)) {
connectionStatus.Visibility = ViewStates.Visible;
transaction.Detach(currentFragment);
transaction.Commit();
drawerLayout.CloseDrawer(leftDrawer);
return;
}
if (fragment == currentFragment) {
transaction.Detach(currentFragment);
transaction.Attach(currentFragment);
transaction.Commit();
drawerLayout.CloseDrawer(leftDrawer);
return;
}
transaction.SetCustomAnimations(Resource.Animation.slide_in, Resource.Animation.slide_out);
transaction.Replace(Resource.Id.fragment_container, fragment);
transaction.Commit();
drawerLayout.CloseDrawer(leftDrawer);
currentFragment = fragment;
}
最佳答案
您可以在主 Activity 中创建一个公共(public)方法并调用该方法来替换或加载当前 fragment 中事件的 fragment 。
关于Android - 如何从 fragment 内部调用 fragment ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32045053/
我是一名优秀的程序员,十分优秀!