我的应用最低版本是10 到目前为止,我正在使用片段支持库
现在我想为少数片段转换添加翻转动画 因此,根据android指南,我们需要使用动画师 它得到了api 11级的支持,对我来说没什么问题。
但还需要使用getFragmentManager
代替getSupportFragmentManager
所以我删除了支持库,改变了我的最低版本10到11错误即将来临
因为在我的应用中我有FragmentTabhost
和getChildFragmentManager()
。
FragmentTabHost
仅在支持库上提供并使用FragmentManager
设置getChildFragmentManager
它不允许我这样做,因为它需要api level 17
任何帮助表示赞赏。 如果您需要更多详细信息,请与我们联系
提前致谢。
答案 0 :(得分:5)
在项目中使用android.support.v4.fragment而不是android.app Fragment
您可以在添加/替换片段
时使用以下代码段进行动画制作 getSupportFragmentManager().beginTransaction()
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.replace(R.id.fragment, new FragmenntTwo())
.commit();
其中FragemntTwo()是你要膨胀的片段。你也可以使用setCustomAnimations(..)替换setTransition(..)
答案 1 :(得分:4)
我认为API等级10及以下的编码动画具有挑战性,而且已经过时了。我可以给出一个建议,阅读网页@ NineOldAndroids from the active developer Jake Wharton。虽然不推荐使用新的Android库,但它支持Android 1.0及更高版本。因此,有一个教训是,您可以更轻松地创建新项目,基本上重新开始而不是转换代码。
即使你使用像ValueAnimator这样的现有动画,API级别也是11级以上。对于动画,你正在达到10级和11级之间的界限。
祝你好运并让我们发布。
答案 2 :(得分:3)
自定义动画也适用于支持片段管理器。您将能够使用支持片段管理器并仍然为其设置动画。
答案 3 :(得分:2)
对于FragmentTabhost
,我曾经使用app.Fragment
制作了一个程序,但突然间我的PM告诉我他想要使用ViewPager
+ Fragment
。我所做的是从v4.jar复制FragmentPagerAdapter.class
并将所有这些v4.Fragment
替换为app.Fragment
。我认为这可能会对您有所帮助。
对于getChildFragmentManager()
,@SuppressLint("NewApi")
可能会对您有所帮助。