4

ボタンの状態が押されたときとデフォルトとしてもう1つを使用する前に、2つのドローアブルを使用します。だから私は単純な効果のためだけに穴の新しい画像を作成しています!だから今私は尋ねています...

ボタンが押されたときに描画可能なボタンに適用(カラーフィルターまたは任意の効果)することは可能ですか?

4

4 に答える 4

2

ボタンが標準の灰色の背景の場合、onClickボタンのメソッドにフィルターを適用して色を変更できます...

import android.graphics.PorterDuff;
button.getBackground().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);  //Green

後でフィルタをクリアするには:

button.getBackground().clearColorFilter();
于 2012-08-01T15:29:26.507 に答える
2

私はそれを行うための最良の方法を見つけました!

Drawable drawableNotPressed = button.getBackground(); 
Drawable drawable = drawableNotPressed.getCurrent();

//use a filter 
drawable.setColorFilter(0xF00, Mode.MULTIPLY);
StateListDrawable listDrawable = new StateListDrawable();
listDrawable.addState(new int[] { android.R.attr.state_pressed }, drawable);
listDrawable.addState(new int[] { android.R.attr.defaultValue }, drawableNotPressed );
button.setBackgroundDrawable(listDrawable);

et 出来上がり!

于 2012-08-02T01:03:43.480 に答える
1

setOn*Listener メソッドの 1 つでボタンのスタイルを変更することができます。

于 2012-08-01T14:18:57.373 に答える