我正在为 Android 4.3 开发,并且我的代码出现了我似乎无法弄清楚的问题。我一直在寻找答案,但我能找到的只是那些想要我目前的情况而我想要他们的错误程序的人。
我有 3 个选项卡,我通过 Android 的 ActionBar 中的选项卡教程将它们放置在操作栏中。
应该发生什么: 选项卡应该出现在操作栏上
相反会发生什么: 选项卡显示在操作栏下方
我的问题是:
1.如何设置这些选项卡以显示在 ActionBar 上而不低于
2.如果成功 1,如何设置选项卡的大小?例如,使 3 个选项卡一起占据 ActionBar 的三分之一(按宽度)
我的代码:
mPager = (ViewPager)findViewById(R.id.pager);
mPager.setAdapter(mAdapter);
final ActionBar actionBar = getActionBar();
actionBar.show();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
ActionBar.TabListener tabListener = new ActionBar.TabListener() {
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
// show the given tab
mPager.setCurrentItem(tab.getPosition());
}
public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {
// hide the given tab
}
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {
// probably ignore this event
}
};
mPager.setOnPageChangeListener(
new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// When swiping between pages, select the
// corresponding tab.
actionBar.setSelectedNavigationItem(position);
}
});
// Add 3 tabs, specifying the tab's text and TabListener
actionBar.addTab(
actionBar.newTab()
.setText("A")
.setTabListener(tabListener));
actionBar.addTab(
actionBar.newTab()
.setText("B")
.setTabListener(tabListener));
actionBar.addTab(
actionBar.newTab()
.setText("C")
.setTabListener(tabListener));