2011-01-19 5 views
2

基本的にTextViewが含まれ、右揃えのImageButtonの横にある顧客設定ウィジェット(xml)があります。システムの選択ボタンイメージを参照する方法

私がしようとしているのは、自分の画像ボタンの画像を、環境設定システムによってデフォルトとして使用されているものに設定することです。例えば、私が使用したい画像のタイプを強調した添付画像を見てください。

私はオンラインで見て、ic_btn_roundイメージを私のドロウアブルに保存して使ってみましたが、正しく表示されません。

何かアドバイス歓迎は、

alt text

答えて

3

この丸ボタンがDialogPreferenceから来ていただきありがとうございます。 /描画可能btn_circleと描画可能/ ic_btn_round_more:

<!-- Layout used by DialogPreference widgets. This is inflated inside 
    android.R.layout.preference. --> 
<ImageView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginRight="4dip" 
    android:layout_gravity="center_vertical" 
    android:background="@drawable/btn_circle" 
    android:src="@drawable/ic_btn_round_more" /> 

だからあなたが2つの以上のファイルを検討する必要があります:私たちはこの環境がどのように実装されるかに見れば、それはこのXMLファイルに記述されたウィジェットを使用していることを、私たちは、見つけることができます。

btn_cicle.xml:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_window_focused="false" android:state_enabled="true" 
     android:drawable="@drawable/btn_circle_normal" /> 
    <item android:state_window_focused="false" android:state_enabled="false" 
     android:drawable="@drawable/btn_circle_disable" /> 
    <item android:state_pressed="true" android:state_enabled="false" 
     android:drawable="@drawable/btn_circle_disable" /> 
    <item android:state_pressed="true" 
     android:drawable="@drawable/btn_circle_pressed" /> 
    <item android:state_focused="true" android:state_enabled="true" 
     android:drawable="@drawable/btn_circle_selected" /> 
    <item android:state_enabled="true" 
     android:drawable="@drawable/btn_circle_normal" /> 
    <item android:state_focused="true" 
     android:drawable="@drawable/btn_circle_disable_focused" /> 
    <item 
     android:drawable="@drawable/btn_circle_disable" /> 
</selector> 

ic_btn_round_more.xml:これらの2つのXMLファイルから参照

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="false" 
     android:drawable="@drawable/ic_btn_round_more_disabled" /> 
    <item 
     android:drawable="@drawable/ic_btn_round_more_normal" /> 
</selector> 

すべてのDrawableが実際* .PNGファイルです。

したがって、基本的に2つの画像を使用して効果を達成する必要があります。しかし、これらのリソースはすべてAndroidの内部にあり、直接使用することはできません。最も簡単な方法は、(ic_btn_roundの場合と同様に)プロジェクトにコピーすることです。

+0

大変お世話になりました。ありがとうございました。 – Dave

+0

誰かがこれらのXMLと対応するPNGを見つけるのに不思議に思うなら、Android SDKフォルダをandroid-sdk/platforms/android- $ API/data/res/drawable * – kroimon

関連する問題