2

アクションバーの色を変更するには (actionbarsherlock) ?

以下のコードで試してみましたが、うまくいきませんでした。

<style name="MyTheme.ActionBarStyle" parent="Widget.Sherlock.ActionBar">
    <item name="background">#ffffffff</item>
</style>

<style name="Theme.SherlockCustom" parent="@style/Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/MyTheme.ActionBarStyle</item>
</style>

+もう1つ、以下のようなサブメニューを追加しています。このボタンの背景色も白です (Sherlock テーマのため)。それらの色を変更できますか?

    SubMenu sub = menu.add("abcd");
    sub.add(0, 1, 0, "Default");
    sub.add(0, 2, 0, "Light");
    sub.add(0, 3, 0, "Light (Dark Action Bar)");
    sub.getItem().setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
4

6 に答える 6

6

actionBar のスタイリングに関しては、ActionBar の外観をプレビューし、必要なすべてのアセットを簡単にダウンロードできる Web アプリである、非常に人気のあるAction Bar Style Generatorを使用するのが最善の方法です。それをあなたの製品に追加してください: 9パッチ、state-drawables、および .xmls。

使い方がわからない場合は、こちらのクイックガイドをご覧ください。

これを使用することは、貴重な Java コードに費やせるはずの多くの時間を無駄にすることなく、アクション バーの見栄えを良くするための最良の方法です。

于 2013-04-07T18:54:18.490 に答える
2

@style/Widget.Sherlock.Light.ActionBar.Solidor@style/Widget.Sherlock.Light.ActionBar.Solid.Inverseを ActionBarStyle の親として使用し、属性backgroundとの両方を使用する必要があると思いますandroid:background。例えば:

<style name="MyTheme.ActionBarStyle" parent="@style/Widget.Sherlock.Light.ActionBar.Solid">
    <item name="background">#ffffff</item>
    <item name="android:background">#ffffff</item>
</style>

<style name="Theme.SherlockCustom" parent="@style/Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/MyTheme.ActionBarStyle</item>
    <item name="android:actionBarStyle">@style/MyTheme.ActionBarStyle</item>
</style>

ActionBar スタイル ジェネレーターは、サブメニューのスタイリングに役立つ場合があります。

于 2013-04-07T18:46:36.107 に答える
2
 I just used below Code 

 getSupportActionBar().setBackgroundDrawable(new 
   ColorDrawable(Color.parseColor("#00853c"))); 

 it changed the bg color. Hope, it helps.
于 2013-09-14T14:14:50.570 に答える
1

最初に投稿したものはほぼ正確に見えます。これは、ActionBar の色を変更するために追加する必要があるテーマです。また、色を指定して android:background 属性を追加する必要があります。

<style name="MyTheme.ActionBarStyle" parent="Widget.Sherlock.ActionBar">
    <item name="background">#ffffffff</item>
    <item name="android:background">#ffffffff</item>
 </style>

<style name="Theme.SherlockCustom" parent="@style/Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/MyTheme.ActionBarStyle</item>
</style>

ただし、アプリケーション全体に適用するか、それを表示するアクティビティにのみ適用する必要があります。AndroidManifest.xml のアプリケーション タグまたはアクティビティ タグのいずれかで、Android を使用してこれを行うことができます。テーマ属性。

<application
    android:name="com.your.package.name"
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:theme="@style/Theme.SherlockCustom" >
于 2013-04-07T18:45:41.227 に答える
-1

カスタム アクション バーを作成し、アクション バー Sherlock の色を変更します.....

于 2013-07-17T13:17:13.400 に答える