Android 操作栏中的个人资料图片

Android Profile image in actionbar

如何将个人资料图片放在默认的 ActionBar 中?

我的应用暂时如下图所示:

在上图中,第一个操作栏是默认操作栏,第二个操作栏(带有图像和个人资料名称)是我创建的。

我想使用默认的带有图像的ActionBar,如下图所示:

也许我需要自己创建一个自定义的Actionbar,但是如果有办法处理默认的ActionBar,我会尝试。

您可以使用自定义操作栏

actionbar.xml

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

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/profile_icon" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="APP_Name" />
</LinearLayout>

Activity.java

中添加以下行
Objects.requireNonNull(getSupportActionBar()).setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.actionbar);

您可以使用以下代码在操作栏上设置图标

setTitle("title");
getActionBar().setIcon(R.drawable.profile_icon);

如果您有不变的徽标,请在 manifest 文件中添加以下代码

单身activity

<activity android:name=".MyActivity" 
       android:icon="@drawable/profile_icon" 
       android:label="title" />  

所有活动

<application
    android:logo="@drawable/profile_icon">

    ...

</application>

您可以使用折叠工具栏,因为它会折叠并在折叠时显示为单个操作栏。向下拖动时,您将获得其中的所有内容。