一、什麼是ToggleButton:java
ToggleButton有兩種狀態:選中狀態和未選中狀態,而且須要爲不一樣的狀態設置不一樣的顯示文本。android
二、ToggleButton屬性:ide
android:checked="true"this
android:textOff="關"code
android:textOn="開"xml
三、使用:it
咱們寫一個開關按鈕,控制燈泡的開關class
首先拖入ToggleButton,並對它進行相關的設置:List
<!--activity_main.xml--> <ToggleButton android:checked="false" android:textOn="開" android:textOff="關" android:id="@+id/toggleButton1" android:layout_width="match_parent" android:layout_height="wrap_content"/>
接着拖入一個imageView,一樣對它進行設置:方法
<!--activity_main.xml--> <ImageView android:id="@+id/imageView1" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/toggleButton1" android:background="@drawable/off" />
接着在MainActivity.java中建立一個監聽器監聽ToggleButton的狀態,而且根據它的狀態更改ImageView。
<!--MainActivity.java--> public class MainActivity extends Activity implements OnCheckedChangeListener{ //聲明控件 private ToggleButton tb; private ImageView img; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化控件 tb=(ToggleButton) findViewById(R.id.toggleButton1); img=(ImageView) findViewById(R.id.imageView1); //給當前的tb設置監聽器 tb.setOnCheckedChangeListener(this); } @Override public void onCheckedChanged(CompoundButton arg0, boolean arg1) { // TODO Auto-generated method stub //當tb被點擊的時候,觸發當前方法.第一個參數判斷是哪一個tb被點擊, //第二個參數獲得tb當前狀態 //當點擊tb的時候,更換img的背景 img.setBackgroundResource(arg1?R.drawable.on:R.drawable.off); } }
四、效果: