條件:當前項目導入了ActionBarSherlock這個jar包,這個jar包的作用為了程序的兼容性,考慮低版本的問題.
學習ActionBarSherlock參考博客鏈接:http://blog.csdn.net/icyfox_bupt/article/details/9286387
接下來貼上代碼
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //這行必須要寫 getSupportActionBar().setDisplayHomeAsUpEnabled(true); } @Override public boolean onCreateOptionsMenu(Menu menu) { return true; } //監聽返回按鈕操作事件 @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()){ case android.R.id.home: Toast.makeText(this, "您點擊了返回按鈕", Toast.LENGTH_LONG).show(); return true; } return super.onOptionsItemSelected(item); }
效果圖如下:
如果沒有引入ActionBarSherlock這個jar包的寫法如下
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getActionBar().setDisplayHomeAsUpEnabled(true);//這句話必須要寫 } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home://增加點擊事件 finish(); break; default: break; } return super.onOptionsItemSelected(item); }
順便介紹幾個ActionBar的方法
ActionBar.setDisplayHomeAsUpEnabled(flag); //控制左上角返回按鈕是否顯示
ActionBar.setDisplayShowHomeEnabled(flag);//控制左上角返回按鈕右邊的圖標是否可以顯示
ActionBar.setHomeButtonEnabled(flag);//左上角返回按鈕是否可以點擊
ActionBar.setDisplayOptions(int);可以一次性設置多個
參數是ActionBar里面的一些常量的值,官方API已經截圖如下: