- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从我的 fragmentTabHost 中检索 fragment :
private void initView() {
FragmentTabHost mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
mTabHost.addTab(mTabHost.newTabSpec("summary").setIndicator("Summary"),
SummaryActivity.class, bundle);
SummaryActivity summaryActivity = (SummaryActivity) getSupportFragmentManager().findFragmentByTag("summary");
System.out.println(summaryActivity);
}
当我尝试在 fragment 创建后立即获取 fragment 时,它返回 null。这可能是线程问题。在这种情况下,我应该如何甚至何时调用 getFragmentByTag 来检索我的 fragment ?
最佳答案
您要查找的Fragment
不在堆栈中。在您找回它时,它甚至还没有添加/存在。
findFragmentByTag
方法将查找并匹配事务中添加的最后一个 fragment ,如果与所需 fragment 不匹配,则它将从历史记录中搜索可用列表。最后,如果您的标签不存在任何 fragment ,它将返回 null
。
确保您首先将 Fragment
添加到 View 中。
View 应该接收 fragment/tabhost 以使其在生命周期中可用。
在执行 findFragmentByTag
查找之前,您必须将 tabHost
返回到 View 以添加 fragment 。
例如:
你在你的 Fragment
的 onCreateView
然后你应该在你膨胀它之后将 tabhost
返回到 View 。
onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
mTabHost = new FragmentTabHost(getActivity());
mTabHost.setup(getActivity(), getChildFragmentManager(), R.id.fragment1);
mTabHost.addTab(mTabHost.newTabSpec("fragmenttag").setIndicator("Fragmenttag"),
FragmentStackSupport.CountingFragment.class, null);
return mTabHost;
}
那么你的Fragment
可能会在back stack中可用,你可以通过Tag
取回它。
关于Android FindFragmentByTag 在 FragmentTabHost 中返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24764506/
我已经实现了 FragmentTabHost,但我的 Fragment 超出了 tabhost。这是我的 Activity : public class MainActivity extends Ac
我在一个 FragmentActivity 中使用了一个 FragmentTabHost,它有 3 个选项卡。 如果我从每个选项卡的第一页更改选项卡,它工作正常,但如果我在一个选项卡内导航抛出片段然后
问题: 我正在尝试创建两个包含 Fragments 和 FragmentTabHost 的选项卡。 我在此处将选项卡添加到 FragmentTabHost(包含选项卡的 FragmentActivit
我在程序中使用 FragmentTabHost 显示子 fragment ( fragment 中的 fragment )时遇到问题。选项卡主机显示完美,但其内容未显示... 首先介绍类: 订单.ja
这是我的 activity_main.xml 布局,它包含两个选项卡。选定的选项卡内容根本没有显示。我哪里错了?如果我在下面的布局中交换 FragmentTabHost 和 Framelayout 的
我已经使用支持包中的 FragmentTabHost 实现了选项卡,但未显示可绘制图标? 如何使用 FragmentTabHost 显示可绘制图标? mTabs = (FragmentTabHost)
我正在尝试删除 android.support.v4.app.Fragment TabHost 上选项卡下方的蓝线和蓝色背景(选择选项卡时)。有人这样做过吗? 发送 最佳答案 我认为您必须自定义选项卡
我正在为我的一个项目使用 FragmentTabHost。 我的应用程序中有 5 个以上的标签页。 如果我使用一个或两个选项卡意味着 TabHost 看起来不错。 如果我添加超过 5 个标签,标签主机
我为 FragmentTabHost 使用了 v4 支持库 要求是当我将标签页切换到另一个标签页和另一个标签页时,即调用 onCreateView() & onActivityCreated() 每次
我正在使用带有多个选项卡的 FragmentTabHost(构造如图 here 所示)。但是,我无法使用 getFragmentByTag(在这种情况下返回 null)随机寻址我的选项卡,除非已通过至
简单的 android.support.v4.app.FragmentTabHost 的图形布局永远不会在 Eclipse 或 Android Studio 中呈现。 我得到的控制台错误是一致的: 渲
几天前,我在 Fragment 中使用 NavigationDrawer 实现了 TabHostFramgent,我遇到了以下错误: java.lang.IllegalStateException:
我正在开发一个带有选项卡的 Android 应用程序 (FragmentTabHost)。我有一个带有 6 个选项卡的 FragmentActivity。目前,选项卡的名称显示为进行行跳转。我希望所有
我试过下面的代码。将框架布局对齐到选项卡小部件上方,但它仍然不起作用 编辑我正在使用 Fragme
我正在 visual studio 中使用 xamarin.android 开发一个应用程序,我正在尝试在我的应用程序的按钮上添加选项卡 这是我的代码 protected override void
我已经尝试了几个链接来删除 FragmentTabHost 中的选定选项卡,但对我不起作用。 First link Second link 我也在我的 Xml 中尝试过,但它不起作用 android:
好的,这就是我在错过图书馆时看到的: import android.support.v4.app.FragmentTabHost; 我在哪里可以找到它以及我需要如何将这个库添加到我的项目中? 感谢任何
所以我正在开发一个应用程序,直到现在,我一直在使用带有两个 Activity 的普通选项卡布局。现在有人告诉我,使用 FragmentTabHost 会更好。所以我一直在阅读一些 docs这是我到目前
这两天我一直在为一个简单的用户界面而苦苦挣扎。我只想要底部带有选项卡的选项卡式布局(由于这个原因不能使用 Tabs ActionBarSherlock)。我还希望我的选项卡由图标和文本表示。很简单?我
我有两个使用 FragmentTabHost 的 fragment 的选项卡式布局。在选项卡选择中,每个 fragment 都会重新创建(onCreateView、onActivityCreated.
我是一名优秀的程序员,十分优秀!