猿问

Actionbar.removealltabs() 留下标签空间

Actionbar.removealltabs 删除我所有的标签。但是,用于保存选项卡的剩余空间仍然存在。结果,我的操作栏看起来像一个非常高的操作栏,下半部分是空的。

将支持操作栏与 appcompatactivity 一起使用。

我已经尝试在我的片段和 Mainactivity 中调用 Actionbar.removealltabs ......结果相同。

这是我创建标签的片段。


@Override

public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {

    super.onViewCreated(view, savedInstanceState);

    mViewPager = view.findViewById(R.id.reddit_search_pager);

    mActionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();


    setViewPager();

    setTabs();

}



public void setTabs() {

    mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);


    ActionBar.TabListener tabListener = new ActionBar.TabListener() {

        @Override

        public void onTabSelected(ActionBar.Tab tab, android.support.v4.app.FragmentTransaction ft) {

            mViewPager.setCurrentItem(tab.getPosition());

        }


        @Override

        public void onTabUnselected(ActionBar.Tab tab, android.support.v4.app.FragmentTransaction ft) {


        }


        @Override

        public void onTabReselected(ActionBar.Tab tab, android.support.v4.app.FragmentTransaction ft) {


        }

    };

    for (int i = 0; i < 3; i++) {

        String tabTitle = "";

        switch (i) {

            case 0:

                tabTitle = TAB_TITLE_SUBREDDITS;

                break;

            case 1:

                tabTitle = TAB_TITLE_POSTS;

                break;

            case 2:

                tabTitle = TAB_TITLE_USERS;

                break;

        }

        mActionBar.addTab(

                mActionBar.newTab()

                    .setText(tabTitle)

                    .setTabListener(tabListener));

        }

}

这是我对工具栏的主要 MainActivity 预先存在的修改。



翻过高山走不出你
浏览 171回答 2
2回答

MMMHUHU

当我与我一起工作时,ListViews我通常使用适配器。每次对列表进行新更改时,您都必须调用适配器,yourAdapter.notifyDataSetChaged()以便列表可以正常更新。也许这就是发生在你身上的事情,所以试着调用一些像我上面展示的方法,它可能会更新并清除空白空间。

慕标琳琳

我通过使用另一种使用选项卡的方式修复它,如本视频中所述的 Tablayout。https://www.youtube.com/watch?v=zQekzaAgIlQ。我必须制作自己的工具栏而不是默认主题。我不知道为什么 Android 建议在其官方网站上使用一种已弃用且有缺陷的方式来实现选项卡,而不是这种方式。其实Youtube视频中提供的TabLayout例子都是404找不到。
随时随地看视频慕课网APP

相关分类

Java
我要回答