ToggleButton有兩種狀態,選中和未選中,即開和關,需要在不同狀態下顯示不同的文本。
屬性:
android:checked="true"
android:textOn="開"
android:textOff="關" 具體文本可以自己設置
新建View:
<ToggleButton android:id="@+id/tb1" android:layout_width="match_parent" android:layout_height="wrap_content" android:textOn="開" android:textOff="關" />
<ImageView android:id="@+id/iv1" android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" android:src="@drawable/bw2"/>
具體設置:
private ToggleButton tb;
private ImageView img;
//ToggleButton 操作 tb= (ToggleButton) findViewById(R.id.tb1); img= (ImageView) findViewById(R.id.iv1); //給tb設置監聽器 tb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { //compoundButton 被點擊的控件 //b 檢測控件狀態 img.setImageResource(b?R.drawable.bw1:R.drawable.bw2); } });
同樣也可以使用匿名內部類,直接實現接口等方法實現。
如果ImageView設置的是background,則使用img.setBackgroundResourse()