如何正确获取android中底栏的当前标签位置?

时间:2016-08-27 19:11:12

标签: android uinavigationbar

我使用setDefaultTabPosition(和/或selectTabAtPosition)来设置标签位置为2 ,我有标签2 标题/图标(从屏幕突出显示的字符串/图像,这是预期的。

内容(片段)仍显示标签0

我发现这是因为getCurrentTabPosition()没有返回正确的制表位置。见下面的代码。期待看到2但得到0。

我做了一个实验,把getCurrentTabPosition()放在监听器里面,看起来工作正常。 (但在单击选项卡之前始终为0)

这是一个错误,还是我错过了什么?

以下代码的Log.e结果:E / currTabPosition:0

    int temp=2;

    // I tried both, any one of them
    bottomBar.setDefaultTabPosition(currBb); 
    bottomBar.selectTabAtPosition(temp);

    temp = bottomBar.getCurrentTabPosition();

    Log.e("currTabPosition", ""+temp);

linke下面是底栏项目:

https://github.com/roughike/BottomBar

1 个答案:

答案 0 :(得分:1)

  • 默认位置

    bottomBar.setDefaultTabPosition(0);

  • 设置听众

    bottomBar.setOnTabSelectListener(new OnTabSelectListener() {
        @Override
        public void onTabSelected(@IdRes int tabId) {
            if (tabId == R.id.tab_favorites) {

            }
        }
    });