2011-04-28 15 views
2

ImageButtonを実装しました。私がそれを押したときを除いて、すべてはうまく動作します。移動する前に「点滅」しません(別のアクティビティへ)。 AndroidはImageButtonのための本質的な「フラッシュ」を持っていますか、それとも明示的にonClickEventの中に書かなければなりませんか?セレクタを使用しますか?クリック時にAndroidのimagebuttonが点滅しない

ご協力いただきありがとうございます。

+0

「フラッシュ」の意味は?ボタンには、normal、focused、およびpressedの3つの状態があります。あなたは押された状態を意味しますか? –

+0

@Anton - ImageButtonは、押されてから解放されたかどうかは表示されません。私は、移動する前に背景を点滅させる(画像ボタンは背景が緑色である)ように2回点滅させるような視覚的なフィードバックをユーザに与えたいだけです。 – MikeC

答えて

0

それながら、背景を非表示にするには、正確に他のbuttons.Theの方法のように、あなたはあなたのImageButtonが、その背景を維持させると、これをnullに設定しない場合、それは通常のボタンのように機能し、クリックしたときに点滅します
public void flashBtn (final ImageButton myBtnToFlash){ 
    myBtnToFlash.setBackgroundResource(R.drawable.glossy_button_green_rectangle); 
    Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
     public void run() { 
      myBtnToFlash.setBackgroundResource(0); 
     } 
    }, 50); 

} 
+1

他のUI要素の汎用ソリューションはありますか? –

1

あなたは、セレクタを使用する必要があり押された状態のため、通常のボタンの画像1枚の画像を持っている場合。私はそれが一番簡単な方法だと思う。私はまた、Eclipseは、「ファイルを解決することができません」文句で「セレクタ」を使用しての問題点があったとして、プログラム的にそれをやってしまった

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" 
    android:constantSize=["true" | "false"] 
    android:dither=["true" | "false"] 
    android:variablePadding=["true" | "false"] > 
    <item 
     android:drawable="@[package:]drawable/drawable_resource" 
     android:state_pressed=["true" | "false"] 
     android:state_focused=["true" | "false"] 
     android:state_selected=["true" | "false"] 
     android:state_checkable=["true" | "false"] 
     android:state_checked=["true" | "false"] 
     android:state_enabled=["true" | "false"] 
     android:state_window_focused=["true" | "false"] /> 
</selector> 
+0

ImageButtonのさまざまな状態の画像が異なります。私が望むのは、彼がボタンを押したことを示す視覚的な手がかりです(フラッシュまたはIBの背景の2倍)。 – MikeC

+0

あなたは単にセレクタで色を設定できると思います。 dbrettschneider

+0

Thx。私は後でそれを試さなければならないでしょう。今は旅行のための梱包...私はセレクターが行く方法だと思います。 – MikeC

2

<ImageButton 
    android:id="@+id/imageButton2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:paddingBottom="1dp" 
    android:paddingLeft="1dp" 
    android:paddingRight="1dp" 
    android:paddingTop="1dp" 
    android:src="@drawable/squareicon" /> 

パディングでは、背景が表示されず、ボタンが他のボタンと同じように動作しません。

+0

は円形のボタンでは機能しません –

0

ImageButtonでは、背景を設定しないでください。画像を「src」に設定すると、ImageButtonにはデフォルトの点滅プロパティが残ります。

ここで、ImageButtonの背景を設定していると思いますが、これは私が推測する必要はありません。

+0

画像のsrcを設定すると、画像の周囲に灰色のボタンの背景が表示されます –

+0

はい、そうです。灰色の背景を見たくない場合は、背景をヌル/透明に設定することができます。 –

関連する問題