res/menu/main_activity_actions.xml <menuxmlns:android="http://schemas.android.com/apk/res/android" > <!-- Search, should appear as action button --> <itemandroid:id="@+id/action_search" android:icon="@drawable/ic_action_search" android:title="@string/action_search" android:showAsAction="ifRoom" /> <!-- Settings, should always be in the overflow --> <itemandroid:id="@+id/action_settings" android:title="@string/action_settings" android:showAsAction="never" /> </menu>
使用v7 appcompat library 兼容 Android 2.1 及以上版本
res/menu/main_activity_actions.xml <menuxmlns:android="http://schemas.android.com/apk/res/android" xmlns:yourapp="http://schemas.android.com/apk/res-auto" > <!-- Search, should appear as action button --> <itemandroid:id="@+id/action_search" android:icon="@drawable/ic_action_search" android:title="@string/action_search" <!--使用兼容包不能使用android:xx--> yourapp:showAsAction="ifRoom" /> ... </menu>
@Override publicbooleanonCreateOptionsMenu(Menu menu){ // Inflate the menu items for use in the action bar MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main_activity_actions, menu); returnsuper.onCreateOptionsMenu(menu); }
@Override publicbooleanonOptionsItemSelected(MenuItem item){ // Handle presses on the action bar items switch (item.getItemId()) { case R.id.action_search: openSearch(); returntrue; case R.id.action_settings: openSettings(); returntrue; default: returnsuper.onOptionsItemSelected(item); } }
//为下级Activity启动向上返回父Activity功能 <application ... > ... <!-- The main/home activity(it has no parent activity) --> <activity android:name="com.example.myfirstapp.MainActivity" ...> ... </activity> <!-- A child of the main activity --> <activity android:name="com.example.myfirstapp.DisplayMessageActivity" android:label="@string/title_activity_display_message" android:parentActivityName="com.example.myfirstapp.MainActivity" > <!-- Parent activity meta-data to support 4.0 and lower --> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.example.myfirstapp.MainActivity" /> </activity> </application>
getSupportActionBar().setDisplayHomeAsUpEnabled(true); // If your minSdkVersion is 11 or higher, instead use: // getActionBar().setDisplayHomeAsUpEnabled(true); }
<resources> <!-- the theme applied to the application or activity --> <stylename="CustomActionBarTheme" parent="@android:style/Theme.Holo"> <itemname="android:windowActionBarOverlay">true</item> </style> </resources>