13

我使用 Sherlock 操作栏

1,当我按下从蓝色到红色时,我想将主页按钮 BG

2,我想更改 HomeAsUp 图标(白色箭头)有什么想法吗?

在此处输入图像描述 主页按钮

在此处输入图像描述 按下

这里创建了这个动作条码

extends SherlockFragmentActivity

public ActionBar actionBar;

this.actionBar = this.getSupportActionBar();
this.actionBar.setDisplayShowHomeEnabled(true);
this.actionBar.setHomeButtonEnabled(true);
this.actionBar.setDisplayHomeAsUpEnabled(true);
4

2 回答 2

19

您可以通过在主题中指定自己的actionBarItemBackground属性来更改此设置。

例如,

<style name="Theme.MyTheme" parent="Theme.Sherlock">
    <item name="android:actionBarItemBackground">@drawable/my_cool_drawable</item>
    <item name="actionBarItemBackground">@drawable/my_cool_drawable</item>
</style>

然后Theme.MyTheme在清单中为您的活动指定。

于 2012-06-26T07:22:28.810 回答
2

通常当您想在 Android 中创建此行为时,您需要创建一个新selector文件(文件夹中的 xml /drawable)。

在该文件中,您要做的是为按钮选择不同的状态并为它们选择不同的图像。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/pressed_image" android:state_pressed="true"></item>
    <item android:drawable="@drawable/regular_image"></item>

</selector>

编辑:

当然,您需要在 actionbarSherlock 库中执行此操作。

于 2012-06-26T07:06:19.293 回答