Android Switch

分享到:

Switch控件是Android4.0新加入的一个可以在两种状态切换的开关控件。用户可以拖动"thumb(滑块)"来回选择,也可以通过点击切换Switch的状态。使用起来和ToggleButton有些类似,具有“开”和“关”两种状态。

Switch类结构:

java.lang.Object

	android.view.View

		android.widget.TextView

			android.widget.Button

				android.widget.CompoundButton

					android.widget.Switch

Switch公共方法:

getCompoundPaddingRight() 返回右对齐填充的视图
getTextOff() 返回Switch处于关闭状态显示的文字内容
getTextOn() 返回Switch处于打开状态显示的文字内容
jumpDrawablesToCurrentState() 在与Switch相关的Drawable操作时,调用Drawable.jumpToCurrentState()这个方法
onMeasure(int widthMeasureSpec, int heightMeasureSpec) 用于测量控件宽高,供绘图时使用
onPopulateAccessibilityEvent(AccessibilityEvent event) 当自定义视图生成一个可访问性的事件时系统会调用这个方法,然后对该视图的每个子视图实现dispatchPopulateAccessibilityEvent()方法。为了在修订的Android 4.0版本之前(API级别14)支持可访问服务你必须为自定义视图覆盖这个方法和使用getText()来输入描述性文本。
onTouchEvent(MotionEvent ev) 触摸事件
setChecked(boolean checked) 设置Switch的状态(打开,关闭)
setSwitchTextAppearance(Context context, int resid) 设置字体大小
setSwitchTypeface(Typeface tf, int style) 设置字体格式
setTextOff(CharSequence textOff) 设置Switch处于关闭状态显示的文字内容
setTextOn(CharSequence textOn) 设置Switch处于打开状态显示的文字内容

Switch实例:

XML布局代码:

<Switch 
                     
	android:id="@+id/demo_switch"
                     
	android:layout_width="wrap_content"
                     
	android:layout_height="wrap_content"
                     
	android:layout_below="@+id/textView"
                     
	android:textOn="开"
                     
	android:textOff="关"
                     
/>

JAVA代码:(这里只给出最重要的监听事件实现方法)

mySwitch.setOnCheckedChangeListener(new OnCheckedChangeListener() {  
  
	@Override  
	public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  
                
			if (isChecked) {  
				//开
				//你自己的逻辑代码
			} else {  
				//关
				//你自己的逻辑代码
			}  
	}  
}); 
昵    称:
验证码:

相关文档:

Android控件
Android基础知识
Android组件
Android实例