編輯:Android開發教程
在上一節中,菜單選項是沒有文字的。如果想要同時顯示圖標和文字,可以一起使用“|”和 MenuItem.SHOW_AS_ACTION_WITH_TEXT常量。
MenuItem mnu1 = menu.add(0, 0, 0, "Item 1");
{
mnu1.setIcon(R.drawable.ic_launcher);
mnu1.setShowAsAction(
MenuItem.SHOW_AS_ACTION_IF_ROOM |
MenuItem.SHOW_AS_ACTION_WITH_TEXT);
}

除了可以點擊Action項目,也可以點擊ActionBar上面的應用圖標。當應用圖標被點擊的 時候,會調用onOptionsItemSelected()方法。如果想識別應用圖標被點擊了,可以使用adnroid.R.id.home 常量。
private boolean MenuChoice(MenuItem item)
{
switch (item.getItemId()) {
case android.R.id.home:
Toast.makeText(this,
"You clicked on the Application icon",
Toast.LENGTH_LONG).show();
return true;
case 0:
Toast.makeText(this, "You clicked on Item 1",
Toast.LENGTH_LONG).show();
return true;
case 1:
......
}
如果想讓應用圖標能被點擊,我們需要調用setDisplayHomeAsUpEnable()方法:
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
//actionBar.hide();
//actionBar.show(); //---show it again---
}
當點擊應用圖標:

一般情況下,一個應用可能包含很多activity,那麼應用的圖標通常被用來返回主Activity。如果想這麼做 ,就需要一個Intent對象,並使用Intent.FLAG_ACTIVITY_CLEAR_TOP標志。
case
android.R.id.home:
Toast.makeText(this,
"You clicked on the Application icon",
Toast.LENGTH_LONG).show();
Intent i = new Intent(this, MyActionBarActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
return true;
使用Intent.FLAG_ACTIVITY_CLEAR_TOP標識,可以確保當點擊應用圖標的時候, 在“返回棧”裡面的那些activity都會被清除掉。使用這種方法,如果用戶點擊返回鍵,其他的activity將 不會再顯示出來。
Android測試教程(10):ActivityInstrumentationTestCase2示例
ActivityInstrumentationTestCase2 主要用來測試一個或多個Activity的功能測試,使用和最終應用同樣的運行環境來測試 Activity的
Android ApiDemos示例解析(14) App->Activity->Save & Restore State
Save & Restore State與之前的例子Android ApiDemo示例解析(9):App->Activity->Persistent
Android RoboGuice使用指南(17) Inject Extra
使用Intent 啟動一個Activity,Service等時,可以通過putExtra 傳送數據 ,被觸發的Activity,Service可以使用getIntent(
在Android中開源類庫使用過程中兼容性等問題的討論
1、在Android4.0環境下編譯的actionbarsherlock、slidingmenu類庫,能不能在4.0以下的版本中使用相信很多人跟我一樣,都以為在低版本(如