我正在将新的 BottomNavigationView 集成到现有项目中。我想知道是否有一种干净流畅的方式(UX-wise)来使用这个小部件的 Activity (而不是 fragment )。我们有复杂的 Activity ,我们宁愿在这次迭代中不改变,最好根本不改变,因为关注点分离。我已经设法使用以下方法使用 Activity ,但它很紧张, Activity 选项卡指示器似乎在更改选项卡之前自行重置。
目前,我的基本 Activity (所有其他 Activity 都扩展了此类)中有底部导航底部(公开、 protected )。在我选择的项目监听器中,我通过 Activity 转换开始其他 Activity (将当前 Activity 中的底部导航 View 淡入另一个(新) Activity 中的相同 View ):
Bundle transition = ActivityOptionsCompat.makeSceneTransitionAnimation(
getActivity(), bottomNavigationView, TRANSITION_NAME).toBundle();
并将这个包传递给 startActivity() 方法。我还调用了 overridePendingTransition() 来实现更平滑的过渡,但总而言之,这仍然很紧张,而且正如我提到的, Activity 选项卡指示器存在问题。不用说,您必须自己处理更改 View 的选中状态。对于我的玩具项目,我按以下方式执行此操作(在我的 Activity 的 OnCreate() 中):
bottomNavigationView.getMenu().getItem(1).setChecked(false);
bottomNavigationView.getMenu().getItem(2).setChecked(false);
bottomNavigationView.getMenu().getItem(3).setChecked(false);
bottomNavigationView.getMenu().getItem(4).setChecked(false);
bottomNavigationView.getMenu().getItem(0).setChecked(true);
有没有一种方法可以让用户体验流畅?
最佳答案
你可以像 style.xml 那样做
样式.xml
<style name="AppTheme>
<item name="android:windowAnimationStyle">@null</item>
<style>
并且, list .xml
<activity
android:theme="@style/AppTheme" />
关于android - 将 Activity 与 BottomNavigationView 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40356737/