Android:XMLを使用してトグルボタンに2つの異なる画像を指定する
デフォルトのToggleButton外観を上書きしようとしています。これは以下を定義するXMLですToggleButton。 <ToggleButton android:id="@+id/FollowAndCenterButton" android:layout_width="30px" android:layout_height="30px" android:textOn="" android:textOff="" android:layout_alignParentLeft="true" android:layout_marginLeft="5px" android:layout_marginTop="5px" android:background="@drawable/locate_me"/> これで、クリックされた状態とクリックされていない状態に使用する2つの30 x 30アイコンがあります。現在、状態に応じてプログラムで背景アイコンを変更するコードがあります。 centeredOnLocation.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (centeredOnLocation.isChecked()) { centeredOnLocation.setBackgroundDrawable(getResources().getDrawable(R.drawable.locate_me_on)); } else { centeredOnLocation.setBackgroundDrawable(getResources().getDrawable(R.drawable.locate_me)); } } }); 明らかに、これを行うためのより良い方法を探しています。私は自動的に状態を切り替える背景画像のセレクターを作ろうとしました: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/locate_me" /> <!-- default --> <item android:state_checked="true" android:drawable="@drawable/locate_me_on" /> <!-- pressed --> <item …