2015-12-17 2 views
0
public class MainActivity extends FragmentActivity implements ActionBar.TabListener { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final ActionBar actionBar=getActionBar(); 
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
    actionBar.addTab(actionBar.newTab().setText("All").setTabListener(this)); 
    actionBar.addTab(actionBar.newTab().setText("Not Called").setTabListener(this)); 
    actionBar.addTab(actionBar.newTab().setText("Called").setTabListener(this)); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.menu_main, menu); 
    return true; 
    } 
    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 
    //noinspection SimplifiableIfStatement 
    if (id == R.id.action_settings) { 
    return true; 
    } 
    return super.onOptionsItemSelected(item); 
    } 

    @Override 
    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) { 

    if(tab.getPosition()==0){ 
    FragmentTop fragmentTop = new FragmentTop(); 
      getSupportFragmentManager().beginTransaction().replace(R.id.container,fragmentTop).commit(); 
    }else if (tab.getPosition()==1){ 
    FragmentTop2 fragmentTop2 = new FragmentTop2(); 
    getSupportFragmentManager().beginTransaction().replace(R.id.container,fragmentTop2).commit(); 
    }else if (tab.getPosition()==2){ 
    FragmentTop3 fragmentTop3 = new FragmentTop3(); 
    getSupportFragmentManager().beginTransaction().replace(R.id.container,fragmentTop3).commit(); 
    } 
} 

    @Override 
    public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) { 
    } 

    @Override 
    public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) { 
    } 
} 
+1

Использование панели инструментов вместо ActionBar –

+0

Могу ли я узнать, как ? редактирование кода. Спасибо –

+0

проверить это у меня есть код в ответах –

ответ

1

Попробуйте это:

toolbar = (android.support.v7.widget.Toolbar) findViewById(R.id.toolbar); 
if (toolbar != null) { 
    toolbar.setTitle(R.string.app_name); 
    setSupportActionBar(toolbar); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    getSupportActionBar().setDisplayShowHomeEnabled(true); 
    getSupportActionBar().setDisplayShowTitleEnabled(true); 
} 
tabHost=(FragmentTabHost)findViewById(android.R.id.tabhost); 
tabHost.setup(this, getSupportFragmentManager(),android.R.id.tabcontent); 
bundle=new Bundle(); 
// to send data u can send it by binding it with bundle 
tabHost.addTab(tabHost.newTabSpec("Tab1").setIndicator("Tab1"), 
     ShowStatusFragment.class,bundle); 

tabHost.addTab(tabHost.newTabSpec("Tab2").setIndicator("Tab2"), 
     ShowStatusFragment.class,bundle); 

tabHost.addTab(tabHost.newTabSpec("Tab3").setIndicator("Tab3"), 
     ShowStatusFragment.class,bundle); 
0

вам нужно использовали android.support.v7.widget.ToolbarAppCompat7

compile 'com.android.support:appcompat-v7:23.1.0' 

добавить в ваш модуль приложения Gradle

Смежные вопросы