我正在使用支持库中的新android.support.design.widget.BottomNavigationView
如何通过代码设置当前选择?我意识到,旋转屏幕后,选择项又变回了第一项。当然,如果有人告诉我,这也将有助于如何在BottomNavigationView函数中“保存” onPause的当前状态以及如何在onResume中还原它。

谢谢!

最佳答案

从API 25.3.0开始,引入了setSelectedItemId(int id)方法,该方法可让您将某个项目标记为已选中,就好像它已被点击一样。
从文档:

代码示例:

BottomNavigationView bottomNavigationView;
bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottomNavigationView);
bottomNavigationView.setOnNavigationItemSelectedListener(myNavigationItemListener);
bottomNavigationView.setSelectedItemId(R.id.my_menu_item_id);
重要
必须已将所有项添加到菜单中(以防您以编程方式执行此操作),并在调用setSelectedItemId之前设置监听器(我相信您希望在调用此方法时运行监听器中的代码)。如果在添加菜单项和设置监听器之前调用setSelectedItemId,则将不会发生任何事情。

关于android - 在Android BottomNavigationView中设置选定的项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40202294/

10-11 01:28