2012-02-22 9 views
0

画像ボタンがあり、2つの状態が必要です。 2つの状態を持つブックマークボタンのように動作します。ユーザーがボタンを押すと画像が変更され、ボタンを押した場合は元の画像が元に戻ります。Androidのどのようなボタンで状態の切り替え/変更ができますか?

これは可能ですか?別のタイプのボタンを使用する方が簡単ですか? ありがとうございました

+2

あなたの質問にいくつかの詳細を追加してください。特にタイトルはちょっと混乱します。 –

+0

そのボタンに独自のカスタムCSSを使用してみてください。 – uday

+0

ごめんなさい...タイトルを変更しました –

答えて

2

「どのような種類のボタンが状態を切り替える/変更できるの?

あなたはToggleBotton

<ToggleButton     
     android:layout_width="wrap_content" 
     android:layout_height="26dp" 
     android:background="@color/button_colors" 
     android:button="@null" 
     android:textOff="@null" 
     android:textOn="@null" /> 

必要があるように思えるそして、このXMLははい、あなたが定期的に使用することができますres/color/button_colors.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_checked="false" android:drawable="@drawable/button_rest"/> 
<item android:state_checked="true" android:drawable="@drawable/button_on" />  
</selector> 
+0

ありがとうございます。それでは、リスナーをアタッチしてアクションを設定するだけです。私はボタンリジッドの状態を取得できますか?それに応じて私は行動を実行することができます。 –

0

に入れて、色/休憩/押された状態でボタンの画像を定義しますボタンもあります。最初にres/drawableディレクトリにセレクタXMLファイルを作成します。例:あなたはこの属性を追加するレイアウトXMLでのボタンの定義で

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

<item android:state_enabled="true" android:state_selected="true" 
android:drawable="@drawable/selectedimage"/> 

<item android:state_enabled="true" android:state_selected="false" 
android:drawable="@drawable/notselectedimage"/> 

</selector> 

、:

android:background="@drawable/myselectorxmlfile" 

そして、あなたがプログラムで選択した設定は、自分自身(onClickListener中)とボタン画像をだろうと述べバックグラウンド状態を変更します。

button.setSelected(true) // or false; 
0

私はあなたがトグルボタンを使用して、それはあなたの問題を解決していただければ幸いことができますね。私はトグルボタンについての簡単なチュートリアルを掲載しました。また Android: Specify two different images for togglebutton using XML

、 : はちょうどそれの簡単なXMLコードを見てみます:

<ToggleButton 
       android:id="@+id/tglbtn" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:textOn="ON" 
       android:textOff="OFF" 
       /> 

を、ちょうどこのリンクでここに与えられた答えをチェック。私の謙虚なブログを見てみてください。ここにリンクがあります:http://androiddesk.wordpress.com/2012/03/10/toggle-button-in-android/

関連する問題