使用getSupportActionBar显示后退按钮

时间:2017-05-15 04:08:15

标签: java android xml android-studio

所以,我有这个小活动,我想添加一个后退按钮(标准箭头)我在这里搜索答案,我找到了这个小代码:

public class PozosFluyentes extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pozos_fluyentes);

        ActionBar actionBar = getSupportActionBar();
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        if (getSupportActionBar() != null) {
            getSupportActionBar().setDisplayHomeAsUpEnabled(true);
            getSupportActionBar().setDisplayShowHomeEnabled(true);
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == android.R.id.home)
            finish();
        return super.onOptionsItemSelected(item);
    }
}

这会让我的应用程序崩溃,所以任何人都可以帮我解决这个问题!我知道这是很常见的事情,但我是Android开发的新手。提前谢谢。

2 个答案:

答案 0 :(得分:1)

用下面的代码重新编写代码。

ActionBar actionBar = getSupportActionBar();
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

if (actionBar!= null) { // you have to use actionBar (ActionBar Object)  instead.
        actionBar.setDisplayHomeAsUpEnabled(true);
       actionBar.setDisplayShowHomeEnabled(true);
    }
   }

告诉我工作与否......希望这会对你有所帮助......(:

答案 1 :(得分:1)

可能您添加android.support.v7.widget.Toolbar而不使用包含NoActionBar的主题。像Theme.AppCompat.Light.NoActionBar这样的主题将解决问题。但如果没有,请共享xml,styles.xml和logcat以检查错误。信息很少,首先要看的是这个。您也可以查看here并查看是否需要禁用主题提供的ActionBar