Android 第十一课——UI Checkbox
常用基础空组件
6 CheckBox
复选框是常用组件之一,但是开发过程中虽然很多地方会用到复选框,但是却不会用Android系统提供的原始样式,类似我们在写html时,不同的浏览器提供的复选框按钮是不一样的,兼容性也很差,一般用图片替代伪装。但是无论如何伪装样式,复选框的功能都是一样的。
layout中组件:
<CheckBox android:id="@+id/cb1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="basketball"/> <CheckBox android:id="@+id/cb2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="baseball"/>
Activity中组件:
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取checkbox cb1 = (CheckBox)findViewById(R.id.cb1); cb2 = (CheckBox)findViewById(R.id.cb2); // 为checkbox注册事件监听(当复选框被选中或从选中到未被选中状态时这个类的onCheckedChanged方法被触发) CBCheckedImpl impl = new CBCheckedImpl(); cb1.setOnCheckedChangeListener(impl); cb2.setOnCheckedChangeListener(impl); } // Activity内部类,实现android.widget.CompoundButton.OnCheckedChangeListener接口同时实现onCheckedChanged方法 btn表示发生状态变化的组件,flag如果为true表示选中,否则表示为被选中 @Override public void onCheckedChanged(CompoundButton btn, boolean flag) { // TODO Auto-generated method stub String rs = "nothing"; rs = flag?"选中了"+btn.getText().toString():"未选中"+btn.getText().toString(); Toast.makeText(CheckBoxActivity.this,rs, Toast.LENGTH_SHORT).show(); } }
注意:
1)复选框的使用基本和单选按钮差不多,主要就是要记住单选按钮实现的接口监听是android.widget.RadioGroup.OnCheckedChangeListener;然而复习按钮实现的监听是android.widget.CompoundButton.OnCheckedChangeListener。不要以为单选按钮和复选按钮都是CompoundButton的子类,就应该实现相同的接口,实际上是因为,单选按钮有组的概念,然而复选按钮没有组的概念。
下一节将学习UI的
7 ProgressBar
8 ListView ListActivity SimpleAdapter
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。