XML
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/black">
<TextView
android:id="@+id/name"
android:textColor="@color/white"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"/>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
活动
OnCreate
getActionBar().setDisplayHomeAsUpEnabled(true);
onOptionsItemSelected
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
在getActionBar()。setDisplayHomeAsUpEnabled(true);行上获取空指针异常。
答案 0 :(得分:0)
您应该将工具栏链接到actionBar:
private void initActionBar() {
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null)
actionBar.setDisplayHomeAsUpEnabled(true);
}
答案 1 :(得分:0)
尝试一下
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
答案 2 :(得分:0)
尝试通过这种方式获取工具栏中的图标
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/black">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorAccent"
android:paddingLeft="15dp"
android:paddingRight="15dp">
<android.support.v7.widget.AppCompatImageView
android:id="@+id/imgBack"
android:layout_width="@dimen/_35sdp"
android:layout_height="@dimen/_35sdp"
android:layout_centerVertical="true"
android:foreground="?android:attr/selectableItemBackground"
android:padding="@dimen/_5sdp"
android:src="@drawable/ic_arrow_back_black" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:textSize="20dp" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>