我正在尝试在Android的动作栏上做一些事情。

我已经在操作栏的右侧添加了新项目。

如何更改操作栏的左侧?我想改变图标和文本,我想在其他屏幕的操作栏中添加一个“返回按钮”


当前回答

这很容易做到

如果你想在代码中改变它,调用:

setTitle("My new title");
getActionBar().setIcon(R.drawable.my_icon);

并将值设置为您喜欢的任何值。

或者,在Android manifest XML文件中:

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

要在应用程序中启用后退按钮,请使用:

 getActionBar().setHomeButtonEnabled(true);
 getActionBar().setDisplayHomeAsUpEnabled(true);

代码应该全部放在onCreate中,这样标签/图标的变化对用户是透明的,但实际上它可以在活动生命周期的任何地方被调用。

其他回答

默认情况下,操作栏标题将使用当前活动的标签,但您也可以通过ActionBar.setTitle()以编程方式设置它。

要实现你所说的“后退”(更准确地说,“向上”)按钮功能,请阅读操作栏开发者指南中的“使用应用程序图标导航”部分。

最后,要更改图标,指南也包括了这些内容。简而言之,操作栏将显示在你的manifest的应用程序或活动元素中提供的android:icon的图像(如果有的话)。典型的做法是创建一个名为ic_launcher.png的应用程序图标(在您需要的所有不同密度中),并将其放置在您的drawable-*目录中。

要让一个图标可以被你所有的动作栏使用,你可以在你的Android Manifest中这样做。

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

    ...

</application>

转到您想要更改操作栏标题名称并写入的特定活动的清单 android: label = "标题名称"

ActionBar actionBar = getSupportActionBar();
actionBar.setTitle(getString(R.string.titolo));
actionBar.setIcon(R.mipmap.ic_launcher);
actionBar.setDisplayShowHomeEnabled(true);

你也可以这样做:

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main2)
        setSupportActionBar(toolbar)
        setTitle("Activity 2")
    }