Android-意外的OnTabReselected通话

时间:2019-02-19 10:09:33

标签: android android-tablayout

ncapdevi将TabLayoutFragNav结合使用。我在TabLayout中有4个标签,其中Tab A是初始标签。

这是我初始化标签页的方式

private void initTab() {
    if (bottomTabLayout != null) {
        for (int i = 0; i < TABS.length; i++) {
            bottomTabLayout.addTab(bottomTabLayout.newTab());
            TabLayout.Tab tab = bottomTabLayout.getTabAt(i);
            if (tab != null)
                tab.setCustomView(getTabView(i));
        }
    }
}

private View getTabView(int position) {
    View view = LayoutInflater.from(this).inflate(R.layout.home_item_bottom, new ConstraintLayout(this));
    AppCompatImageView icon = view.findViewById(R.id.home_item_bottom_icon);
    CustomFontTextView name = view.findViewById(R.id.home_item_bottom_name);
    icon.setImageDrawable(ContextCompat.getDrawable(this, mTabIconsSelected[position]));
    name.setText(TABS[position]);
    return view;
}

我在addOnTabSelectedListener中使用TabLayout,并且在按任意一个选项卡时都会按预期工作。

按时间顺序排列:

  1. 按标签B,OnTabSelectedListener称为

  2. 按回去,我返回A

  3. 再次按标签B,OnTabReselectedListener称为

我不希望这种情况发生,因为它不是相同的选项卡(从A按下B,但是就像我重新选择了相同的选项卡一样。)

我的代码有什么问题吗?如果我的应用程序中需要任何对解决此问题至关重要的代码,请告诉我,我将其发布在这里:)

0 个答案:

没有答案