给AppCompatActivity的标题栏上加上返回按钮

来源:互联网 发布:lol断开连接请检查网络 编辑:程序博客网 时间:2024/06/05 06:45

给AppCompatActivity的标题栏上加上返回按钮

目前基于android6.0版本sdk并通过android studio创建的空Activity默认都是继承自AppCompatActivity。

选择空Activity并创建

在默认情况下,这个Activity在标题栏上是没有返回按钮的,如下图所示:

默认显示效果

此时如果需要给AppCompatActivity的标题栏上加上返回按钮,可以在Activity的onCreate中加入如下代码:

    android.support.v7.app.ActionBar actionBar = getSupportActionBar();    if(actionBar != null){        actionBar.setHomeButtonEnabled(true);        actionBar.setDisplayHomeAsUpEnabled(true);    }

在onOptionsItemSelected中加入如下代码:

    @Override    public boolean onOptionsItemSelected(MenuItem item) {        switch (item.getItemId()) {            case android.R.id.home:                this.finish(); // back button                return true;        }        return super.onOptionsItemSelected(item);    }

运行效果,如下:

加上返回键的效果

完整的示例代码如下:

package com.toby.personal.myapplication;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.MenuItem;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        android.support.v7.app.ActionBar actionBar = getSupportActionBar();        if(actionBar != null){            actionBar.setHomeButtonEnabled(true);            actionBar.setDisplayHomeAsUpEnabled(true);        }    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        switch (item.getItemId()) {            case android.R.id.home:                this.finish(); // back button                return true;        }        return super.onOptionsItemSelected(item);    }}
0 0
原创粉丝点击