一、什么是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); } }
四、效果: