web-dev-qa-db-ja.com

プログラムでボタンのアイコンを変更する方法は?

私はすでにボタンを持っています:

<Button 
Android:layout_height="wrap_content" 
Android:layout_width="fill_parent"
Android:drawableLeft="@drawable/empty"
Android:id="@+id/buttonMyText" 
Android:text="  myText" 
Android:textSize="20px" 
Android:gravity="left">
</Button>

プログラムが起動すると、ボタンに「空の」アイコンが表示されます。

ユーザーの入力に基づいて、ボタンのアイコンをコード(低、中、高)から自動的に変更します

私は試した:

Button myButton = bla... bla... bla...

しかし、私は理解できません

myButton.(what?)
20
ZiGi

ドキュメントを確認すると、各XML属性に対応するコードが表示されます。

ここを参照してください: http://developer.Android.com/reference/Android/widget/Button.html

drawableLeftを検索すると、次の情報が表示されます:

Android:drawableLeft:
setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)
41
EboMike

ボタンクリックイベントでアイコンを変更したい場合は、このコードを試してください...

buttonMyText.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
       buttonMyText.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ImageNameHere, 0, 0, 0);
       buttonMyText.setTextColor(Color.BLACK);
    }
});
8
Ravi Makvana