Android 设置动作栏的样式

Android 设置动作栏的样式,android,android-actionbar,Android,Android Actionbar,我试图通过在左侧添加一个自定义后退按钮,在中间添加一个图标来设置动作栏的样式。Android Studio中的渲染完全符合我的要求,但当我在手机上测试布局时,它只会在左侧显示后退按钮和图标,图标位于后退按钮的顶部。这是我的布局文件: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

我试图通过在左侧添加一个自定义后退按钮,在中间添加一个图标来设置动作栏的样式。Android Studio中的渲染完全符合我的要求,但当我在手机上测试布局时,它只会在左侧显示后退按钮和图标,图标位于后退按钮的顶部。这是我的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"      
    android:id="@+id/action_bar_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageButton android:id="@+id/back_button"
        android:contentDescription="Image"
        android:src="@drawable/back_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:background="@color/action_bar_bg_color"
        android:layout_alignParentLeft="true"/>

    <ImageView android:id="@+id/cow_icon"
        android:contentDescription="Image"
        android:src="@drawable/cowhead"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_centerVertical="true"/>

</RelativeLayout>

有人知道是什么导致了操作栏的样式有缺陷吗?

您可以尝试使用新工具栏: 这对于定制actionBar非常有用

否则,您不必自定义后退按钮,actionbar支持以下功能:

ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayShowTitleEnabled(false);
    View mActionBar = getLayoutInflater().inflate(R.layout.action_bar_layout, null);
    actionBar.setCustomView(mActionBar);
    actionBar.setDisplayShowCustomEnabled(true);