2012-10-25 6 views
5

私のアプリでActionBarSherlockを使用していますが、ActionBarのMenuItemを無効にすると、アイコンは携帯電話(HTC One XのAndroid 4.0.4を実行中)で半透明になりますが、他の携帯電話やエミュレータ。無効になっている場合、ActionBarの半透明のアイコン:私の電話でのみですか?

この動作がネイティブActionBarのデフォルト動作ではないと仮定していますか?私はそのアイデアが好きです...それは、MenuItemが何らかの理由で有効になっていないことをユーザーに警告します(私の場合は、保存ボタンであり、少なくとも1つのフィールドが満たされていないとボタンを無効にします)。

私は自分自身に半透明のアイコンを提供し、MenuItemが無効になっているときに手動で設定することを考えていました。これはすべてのAndroidバージョン、ネイティブActionBarで動作するかどうかで動作します。問題は、私の電話(またはそれと同じ行動をしている他の人)で、半透明で2倍になり、私はそれを望んでいないということです。

この効果を適切に達成するにはどうすればよいですか?

+0

ActionButtonでアルファ値を設定しようとしましたか? HTCが値を0.5に設定している場合、すべてのデバイスに設定するとうまく動作します。 –

答えて

1

問題はテーマにあると思いますが、デフォルトテーマを適用しています。だから、HTCはデフォルトのテーマリソースを上書きします。カスタムテーマを作成し、item_backgroundをsdkリソースのデフォルトのものに変更する必要があると思います。

<item name="selectableItemBackground">@android:drawable/item_background</item> 
0

テーマを独立させる必要があります。 .xmlファイルでは、次のように設定することができます。

android:background="?android:attr/listSelector" 

色を表示する場所に設定します。

関連する問題