标签:android actionbar actionbaractivity
在开写之前需要先引入工程包lib_v7_appcompat,里面为我们提供了ActionBarActivity等许多相关类。
先新建一个activity来继承ActionBarActivity,在里面进行一些基本设置,如下:
/** * ActionBar基础activity,进行统一的属性设置 <br> * 所有顶部带有actionbar的类都继承此类。 * * @author leetoney * @time 2015年1月31日17:28:00 * */ public class BaseActionBarActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // 设置窗口风格为顶部显示Actionbar supportRequestWindowFeature(WindowCompat.FEATURE_ACTION_BAR); ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayShowTitleEnabled(true); actionBar.setDisplayHomeAsUpEnabled(true); // 决定左上角图标的右侧是否有向左的小箭头, true // 有小箭头,并且图标可以点击 actionBar.setDisplayShowHomeEnabled(false); // 使左上角图标是否显示,如果设成false,则没有程序图标,仅仅就个标题, // 否则,显示应用程序图标,对应id为android.R.id.home,对应ActionBar.DISPLAY_SHOW_HOME // force use of overflow menu on devices with menu button // 在actionbar中显示溢出菜单选项 // http://stackoverflow.com/questions/9286822/how-to-force-use-of-overflow-menu-on-devices-with-menu-button try { ViewConfiguration config = ViewConfiguration.get(this); Field menuKeyField = ViewConfiguration.class .getDeclaredField("sHasPermanentMenuKey"); if (menuKeyField != null) { menuKeyField.setAccessible(true); menuKeyField.setBoolean(config, false); } } catch (Exception ex) { // Ignore } } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home:// 点击返回图标事件 this.finish(); default: return super.onOptionsItemSelected(item); } } }
public class MainActivity extends BaseActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getSupportActionBar().setTitle("返回"); } }效果如图:
标签:android actionbar actionbaractivity
原文地址:http://blog.csdn.net/u012527802/article/details/43372001