效果如图:
MainActivity.java具体实现:
package com.rainmer.actionbartab;
import android.app.ActionBar;
import android.app.Activity;
import android.app.FragmentTransaction;
import android.app.ActionBar.Tab;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);//设置导航模式
ActionBar.TabListener tabListener = new ActionBar.TabListener() {
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "TabSelected"+tab.getPosition(), Toast.LENGTH_SHORT).show();
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
};
for (int i = 0; i < 3; i++) {
Tab tab = actionBar.newTab();
tab.setText("Tab"+i);
tab.setTabListener(tabListener);
actionBar.addTab(tab);
}
}
}
关于Tab Indicator的样式文件,这里介绍一个快速生成网站:http://jgilfelt.github.io/android-actionbarstylegenerator/
下载生成的zip文件,然后复制到项目中,在Manifest.xml文件中修改MainActivity的Theme属性为相应的Style name。
如图: