在 Android 中同时在操作栏上设置图标和后退按钮

Set icon and back button on action bar at same time in Android

getSupportActionBar().setIcon(R.drawable.icon);在 Android 中不工作。

    getSupportActionBar().setTitle("Dictionary");
    getSupportActionBar().setDisplayUseLogoEnabled(true);
    getSupportActionBar().setDisplayShowHomeEnabled(true); 
    getSupportActionBar().setIcon(R.drawable.ic_dictionary);

在你的情况下,你应该在这些行之前有一行代码...如果你没有这行代码,那就是问题所在

setSupportActionBar(toolbar);

但是我自己使用 material 工具栏并在 xml 中向工具栏添加图标和文本并摆脱了这些方法!查看我的 xml 个文件作为示例

<com.google.android.material.appbar.AppBarLayout
    android:background="@color/colorPrimary"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <com.google.android.material.appbar.MaterialToolbar
        android:layout_width="match_parent"
        android:layout_height="?actionBarSize">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/iv_back"
                android:onClick="onClick"
                android:layout_width="wrap_content"
                android:padding="16dp"
                android:background="@drawable/ripple_on_primary"
                android:layout_centerVertical="true"
                android:layout_alignParentEnd="true"
                android:src="@drawable/ic_back"
                android:layout_height="wrap_content"/>

            <TextView
                android:layout_centerVertical="true"
                android:layout_toStartOf="@id/iv_back"
                android:id="@+id/tv_toolbar"
                style="@style/tvTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/previous_transactions" />

            <TextView
                style="@style/tvContent"
                android:text="@string/help"
                android:id="@+id/tv_help"
                android:onClick="onClick"
                android:layout_centerVertical="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>

        </RelativeLayout>

    </com.google.android.material.appbar.MaterialToolbar>

</com.google.android.material.appbar.AppBarLayout>