Android ActionBar Home按钮返回事件处理的两种方式:

来源:互联网 发布:淘宝生e经官网 编辑:程序博客网 时间:2024/05/16 06:53

今早无聊查看了一下android官方文档,最近对ActionBar很感兴趣,它确实对我们的日常开发起到了很便捷的作用.

对于通过点击ActionBar的Home按钮返回,以前我只知道有一种方式:也就是

通过 getSupportActionBar().setDisplayHomeAsUpEnabled(true); 设置ActionBar的Home按钮可以点击,
@Overridepublic boolean onOptionsItemSelected(MenuItem item) {    // Handle presses on the action bar items    switch (item.getItemId()) {        case R.id.action_home:            // 处理返回逻辑            return true;        default:            return super.onOptionsItemSelected(item);    }}
第二种也是刚在官网看到的,在此记录一下,防止以后忘记: 在manifest中明确的标明子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>
然后再onCreat()方法中调用Home按钮可点击:

@Overridepublic void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_displaymessage);    getSupportActionBar().setDisplayHomeAsUpEnabled(true);    // If your minSdkVersion is 11 or higher, instead use:    // getActionBar().setDisplayHomeAsUpEnabled(true);}
然后不用做其他的处理,当我们点击home按钮时,Android系统会自动为我们返回父级Activity.

0 0
原创粉丝点击