Android 中CheckBox的isChecked的使用实例详解
程序员文章站
2022-06-20 13:10:37
android 中checkbox的ischecked的使用实例详解
范例说明
所有的网络服务在user使用之前,都需要签署同意条款,在手机应用程序、手机游戏的设计...
android 中checkbox的ischecked的使用实例详解
范例说明
所有的网络服务在user使用之前,都需要签署同意条款,在手机应用程序、手机游戏的设计经验中,常看见checkbox在同意条款情境的运用,其选取的状态有两种即ischecked=true与ischecked=false。
以下范例将设计一个textview放入条款文字,在下方配置一个checkbox widget作为选取项,通过button.onclicklistener按钮事件处理,取得user同意条款的状态。
当checkbox.ischecked为true,更改textview的文字内容为“你已接受同意!!”,当未选取checkbox时,button则不可以被选择的(被disabled)。
范例程序
src/irdc.ex04_04/ex04_04.java
利用checkbox.onclicklistener里的事件来判断button该不该显示,其方法就是判断button.enabled的值;在一开始时,默认参数为false,当有单击checkbox时,button参数就修改为true。
/* import程序略 */ public class ex04_04 extends activity { /** called when the activity is first created. */ /*声明 textview、checkbox、button对象*/ public textview mytextview1; public textview mytextview2; public checkbox mycheckbox; public button mybutton; @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); /*取得textview、checkbox、button*/ mytextview1 = (textview) findviewbyid(r.id.mytextview1); mytextview2 = (textview) findviewbyid(r.id.mytextview2); mycheckbox = (checkbox) findviewbyid(r.id.mycheckbox); mybutton = (button) findviewbyid(r.id.mybutton); /*将checkbox、button默认为未选择状态*/ mycheckbox.setchecked(false); mybutton.setenabled(false); mycheckbox.setonclicklistener(new checkbox.onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub if(mycheckbox.ischecked()) { /*设置button为不能选择对象*/ mybutton.setenabled(true); mytextview2.settext(""); } else { /*设置button为可以选择对象*/ mybutton.setenabled(false); mytextview1.settext(r.string.text1); /*在textview2里显示出"请勾选我同意"*/ mytextview2.settext(r.string.no); } } }); mybutton.setonclicklistener(new button.onclicklistener() { // 程序略 }); } }
扩展学习
checkbox在默认内容为空白时(没有任何默认的提示文字下),可设置提示user的文字,其调用的方法为checkbox.sethint()方法;在扩展学习的范例练习,是抓取r.string.hello这个字符串常数,其与默认checkbox文字的结果是相同的,你不妨试试看。
mytextview1 = (textview) findviewbyid(r.id.mytextview1); mytextview2 = (textview) findviewbyid(r.id.mytextview2); mycheckbox = (checkbox) findviewbyid(r.id.mycheckbox); mybutton = (button) findviewbyid(r.id.mybutton); mycheckbox.setchecked(false); /*利用sethit抓取strings里面的值*/ charsequence hint = getstring(r.string.hello); mycheckbox.sethint(hint); /*设置文字颜色*/ mycheckbox.sethinttextcolor(color.red);
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!