【问题标题】:Importing two FragmentManager types into the same class将两个 FragmentManager 类型导入同一个类
【发布时间】:2018-09-27 23:25:29
【问题描述】:

在单个活动中,我尝试将 ViewPager 和 BottomNavigationView 结合起来。我使用 third party library 作为底部导航视图 (AHBottomNavigation)。现在,问题来了:

在尝试使用 FragmentManager 时,Viewpager 需要 android.support.v4.app.FragmentManager,但 BottomNavigationView 需要 android.app.FragmentManager。由于不能同时导入两个类,所以我正处于下一步要做什么的十字路口。

PS:解决这个问题的一个快速方法是找到一个更兼容的库。但是,在我的情况下,切换库非常昂贵,我该怎么办?

【问题讨论】:

  • android.app.FragmentManager 已弃用,不应使用。您应该请求库开发人员切换到android.support.v4.app.FragmentManager

标签: java android fragmentmanager


【解决方案1】:

由于不能同时导入两个类,所以我正处于下一步要做什么的十字路口。

您不需要同时导入它们 - 您可以使用每个类的完全限定名称。

android.support.v4.app.FragmentManager supportManager = getSupportFragmentManager();
android.app.FragmentManager oldAssManager = getFragmentManager();

附: - 我强烈建议您放弃仍在使用旧片段管理器的 3rd 方库,尤其是 BottomNavigationView an official one already exists

PPS - 根据Material Design Guidelines(向下滚动到“转换”),您不应使用“滑动”动画在选项卡之间切换,这是ViewPager 默认所做的,因此您可能还想重新考虑将这两个组件结合起来。

希望有帮助!

【讨论】:

    猜你喜欢
    • 2017-01-29
    • 2015-04-29
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多