ToggleButton(开关按钮)是Android系统中比较简单的一个组件,是一个具有选中和未选择状态双状态的按钮,并且需要为不同的状态设置不同的显示文本。

ToggleButton常用的XML属性

属性名称

描述

android:disabledAlpha

设置按钮在禁用时透明度。

android:textOff

未选中时按钮的文本

android:textOn

选中时按钮的文本

下面是具体的例子:

第一个例子是通过Toast显示ToggleButton不同的状态时的信息

MainActivity.java

        
  1. packagecom.android.togglebutton;
  2. importandroid.app.Activity;
  3. importandroid.os.Bundle;
  4. importandroid.view.View;
  5. importandroid.view.View.OnClickListener;
  6. importandroid.widget.Toast;
  7. importandroid.widget.ToggleButton;
  8. publicclassMainActivityextendsActivity{
  9. //声明ToggleButton
  10. privateToggleButtontogglebutton;
  11. @Override
  12. publicvoidonCreate(BundlesavedInstanceState){
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.main);
  15. togglebutton=(ToggleButton)findViewById(R.id.togglebutton);
  16. togglebutton.setOnClickListener(newOnClickListener(){
  17. publicvoidonClick(Viewv){
  18. //当按钮第一次被点击时候响应的事件
  19. if(togglebutton.isChecked()){
  20. Toast.makeText(MainActivity.this,"你喜欢球类运动",Toast.LENGTH_SHORT).show();
  21. }
  22. //当按钮再次被点击时候响应的事件
  23. else{
  24. Toast.makeText(MainActivity.this,"你不喜欢球类运动",Toast.LENGTH_SHORT).show();
  25. }
  26. }
  27. });
  28. }
  29. }

main.xml

        
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <TextView
  8. android:layout_width="fill_parent"
  9. android:layout_height="wrap_content"
  10. android:text="@string/hello"
  11. />
  12. <ToggleButton
  13. android:id="@+id/togglebutton"
  14. android:layout_width="wrap_content"
  15. android:layout_height="wrap_content"
  16. android:textOn="喜欢"
  17. android:textOff="不喜欢"
  18. />
  19. </LinearLayout>

strings.xml

        
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <resources>
  3. <stringname="hello">你喜不喜欢球类运动?</string>
  4. <stringname="app_name">测试ToggleButton</string>
  5. </resources>

效果图:

第二个例子通过图片的变化显示ToggleButton不同的状态时的图片

MainActivity.java

        
  1. packagecom.android.togglebutton;
  2. importandroid.app.Activity;
  3. importandroid.os.Bundle;
  4. importandroid.widget.CompoundButton;
  5. importandroid.widget.CompoundButton.OnCheckedChangeListener;
  6. importandroid.widget.ImageView;
  7. importandroid.widget.ToggleButton;
  8. publicclassMainActivityextendsActivity{
  9. //声明ImageView,ToggleButton
  10. privateImageViewimageView;
  11. privateToggleButtontoggleButton;
  12. @Override
  13. publicvoidonCreate(BundlesavedInstanceState){
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.main);
  16. //通过findViewById获得ImageView,ToggleButton
  17. imageView=(ImageView)findViewById(R.id.imageView);
  18. toggleButton=(ToggleButton)findViewById(R.id.toggleButton);
  19. toggleButton.setOnCheckedChangeListener(newOnCheckedChangeListener(){
  20. publicvoidonCheckedChanged(CompoundButtonbuttonView,booleanisChecked){
  21. toggleButton.setChecked(isChecked);
  22. //使用三目运算符来响应按钮变换的事件
  23. imageView.setImageResource(isChecked?R.drawable.pic_on:R.drawable.pic_off);
  24. }
  25. });
  26. }
  27. }

main.xml

        
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent">
  6. <ImageView
  7. android:id="@+id/imageView"
  8. android:layout_width="wrap_content"
  9. android:layout_height="wrap_content"
  10. android:src="@drawable/pic_off"
  11. android:layout_gravity="center_horizontal"
  12. />
  13. <ToggleButton
  14. android:id="@+id/toggleButton"
  15. android:layout_width="130dip"
  16. android:layout_height="wrap_content"
  17. android:textOn="开灯"
  18. android:textOff="关灯"
  19. android:layout_gravity="center_horizontal"
  20. />
  21. </LinearLayout>

效果图:

更多相关文章

  1. android 获取屏幕高度,宽度,状态栏高度
  2. Qt on Android:图文详解Hello World全过程
  3. Android(安卓)学习笔记(4)—— ToggleButton 、Switch
  4. Android(安卓)Power Management 实现
  5. Android(安卓)按钮点击切换背景,同时修改文字颜色
  6. android 控制按钮各个状态的样式
  7. Android手机应用开发(一) | 基本的UI界面设计
  8. Android(安卓)判断网络状态
  9. Android实现底部tabbar按钮突出效果

随机推荐

  1. android一种较为复杂的布局
  2. Android隐藏软键盘
  3. Android(安卓)使用ContentProvider 添加
  4. Android搜索框自动提示文本框——(单一提
  5. Android(安卓)source download for linux
  6. Android(安卓)WiFi管理(WIFI_SERVICE)
  7. Android进度条简单练习实例
  8. How to resign the Android(安卓)APK
  9. android 开机启动
  10. Android(安卓)VideoView播放视频