我一直在寻找解决此问题的不同解决方案:如何使用Android中的ActionBar在不同的标签中显示不同的内容?
我找到了一个方法:将片段用作XML,然后将它们作为不同选项卡的布局。但是发布的大多数代码要么已过时,要么已弃用或非常复杂。
public class MainActivity extends ActionBarActivity implements ActionBar.TabListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sample_main);
// Set the Action Bar to use tabs for navigation
ActionBar ab = getSupportActionBar();
ab.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Add three tabs to the Action Bar for display
ab.addTab(ab.newTab().setText("Tab 1").setTabListener(this));
ab.addTab(ab.newTab().setText("Tab 2").setTabListener(this));
ab.addTab(ab.newTab().setText("Tab 3").setTabListener(this));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate menu from menu resource (res/menu/main)
getMenuInflater().inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
}
// Implemented from ActionBar.TabListener
@Override
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
// This is called when a tab is selected.
}
// Implemented from ActionBar.TabListener
@Override
public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
// This is called when a previously selected tab is unselected.
}
// Implemented from ActionBar.TabListener
@Override
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
// This is called when a previously selected tab is selected again.
}
这是来自Android的示例,提供了ActionBar及其自身功能的示例。这将是一个良好的开端,除了它已被弃用。大多数这个或其他被弃用的东西。所以我想知道,为不同的标签使用不同的片段的新方法是什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
#尝试按照以下步骤操作:
activity_main.xml
,Toolbar
和TabLayout
ViewPager
Tab
内容显示的片段。FragmentPagerAdapter
填充Fragments
ViewPager
FragmentPagerAdapter
ViewPager
设置为ViewPager.setAdapter(FragmentPagerAdapter)
TabLayout.setupWithViewPager(ViewPager)
授权ViewPager
使用TabLayout
功能。这是一个完整的tutorial。
#如果您使用的是AndroidStudio ,则可以使用默认的 TabbedActivity 模板轻松创建它。请按照以下步骤操作:
AndroidStudio
minimum SDK
版本,然后按Next
TabbedActivity
,然后按Next
Navigation Style:
"Action Bar Tabs(with ViewPager)
> Finish
希望这会有所帮助〜