如何在android中的操作栏下方修复可滚动选项卡

时间:2013-12-10 06:04:09

标签: android tabs android-actionbar android-viewpager

在标签中,它看起来如下所示。

enter image description here

但在设备中它看起来很好

.. enter image description here

我看起来就像谷歌手机和手机中包含的内容一样

enter image description here

这是我的oncreate方法。我已经完成了带有视图寻呼机的滚动标签。在设备中它很适合但在标签中?。我知道这是动作栏设计模式。

         public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
                 setContentView(R.layout.my_directory_activity);
         final ActionBar actionBar = getSupportActionBar();
         actionBar.setIcon(R.drawable.logo);
         actionBar.setDisplayHomeAsUpEnabled(true);
         actionBar.setDisplayShowTitleEnabled(false);
         actionBar.setDisplayShowHomeEnabled(true);

         myDirectoryPagerAdapter = new MyDirectoryAdapter(
                getSupportFragmentManager());

          mViewPager = (ViewPager) findViewById(R.id.pager);
          mViewPager.setAdapter(myDirectoryPagerAdapter);

          mViewPager.setOnPageChangeListener(new 
                            ViewPager.SimpleOnPageChangeListener() {
                    @Override
                    public void onPageSelected(int position) {

                     actionBar.setSelectedNavigationItem(position);
                    }
                });

          for (int i = 0; i < myDirectoryPagerAdapter.getCount(); i++) {

                actionBar.addTab(actionBar.newTab()
                    .setText(myDirectoryPagerAdapter.getPageTitle(i))
                    .setTabListener(this));
            }

           actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

           }

2 个答案:

答案 0 :(得分:0)

它将显示在设备中的操作栏下方,因为设备没有足够的空间显示所有选项卡,因此操作栏将自行管理以显示选项卡并根据设备大小进行调整。由于您还在操作栏中显示了徽标,因此它将始终切换到下方。

答案 1 :(得分:0)

默认情况下,对于操作栏中的选项卡。 bcoz为您节省一些屏幕空间是件好事。

如果您不希望它出现在操作栏中。您需要单独实施它。使用PagerTitleStrip。

这里有两个实现: http://developer.android.com/training/implementing-navigation/lateral.html#PagerTitleStrip

https://github.com/astuetz/PagerSlidingTabStrip