我正在尝试在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中,这样标签/图标的变化对用户是透明的,但实际上它可以在活动生命周期的任何地方被调用。

其他回答

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

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

    ...

</application>

这很容易做到

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

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中,这样标签/图标的变化对用户是透明的,但实际上它可以在活动生命周期的任何地方被调用。

对于set Title:

getActionBar().setTitle("Title");

对于set图标:

getActionBar().setIcon(R.drawable.YOUR_ICON_NAME);

我得到了非静态方法setTitle(CharSequence)不能从静态上下文错误中引用,因为我在静态PlaceholderFragment类中使用了setTitle()。我通过使用getActivity(). getactionbar()来解决它。setTitle(“新标题”);

如果你想改变动作栏的标题,只需在你的活动的onCreate()中给出以下1行代码

getActionBar().setTitle("Test");