与FragmentTabHost类似的东西没有支持(v4)库

时间:2013-12-30 20:41:50

标签: android android-fragments android-4.0-ice-cream-sandwich

我正在更新我的应用程序以使用片段而不是活动来稍后为平板电脑制作更好的ui。因为我有minSdk = 14我认为我可以扔掉support.v4但现在我想要一个带有一些标签子片段的片段。我发现没有支持库的唯一方法是ActionBar标签的东西。但对于平板电脑,我希望有类似的东西

左:单片段(不变)
右:更改片段,其中一些可以包含标签

我希望标签仅在右侧可见,而不是在两侧以上的操作栏级别。是否有一种方法(值得努力)没有support.v4这样做或者我应该重做代码我必须使用support.v4片段类,我可以使用support.v4 lib提供的FragmentTabHost吗?

1 个答案:

答案 0 :(得分:7)

由于您的最小SDK为14(我认为您没有使用ViewPager?!),因此使用片段框架的SDK版本是有意义的。 FragmentTabHostTabHost周围的便利包装器,可以更轻松地处理片段作为标签。我不记得在SDK中看到FragmentTabHost的等价物,所以你有两个选择:

  1. 使用标准TabHost并在选项卡更改时实现您自己的逻辑来切换片段
  2. 复制FragmentTabHost的代码并将其更改为与片段框架的SDK版本一起使用。如果我没记错,FragmentTabHost的代码非常简单,复制粘贴后更改导入应该有效。
  3. 然而,似乎你想使用嵌套片段的FragmentTabHost(片段标签是另一个更大片段的一部分),在这种情况下你需要使用来自支持库(以及FragmentTabHost)因为在4.2开始的SDK中引入了对嵌套片段的支持,这意味着4.0和4.2之间的任何版本都将无法使用嵌套片段。