博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
radioButton添加试题选项webview(二)
阅读量:6857 次
发布时间:2019-06-26

本文共 2536 字,大约阅读时间需要 8 分钟。

由于项目里radioGroup里,4个选项里加载的是webview,而不是radiobutton本身自己可设置的text类型,并且每个webview都需要和radiobutton对齐,所以这个布局有点费劲。。。

起初想的是,radiogroup包括着4个水平布局的linearlayout,每个linearlayout包括着radiobutton和webview,布局展示上没有问题,结果运行出来,单选的题竟然可以变成多选,radiobutton不再对这4个radiobutton起管理作用了,网上查资料,原来raidogroup和radiobutton中间不能嵌套别的layout,否则就失去单选作用了。

解决:   自定义了个radioGroup,用4个水平布局的linearlayout,每个layout放一个button和webview,然后为这4个button绑定相同的监听器,代码如下:

private Button rbA;private Button rbB;private Button rbC;private Button rbD;rbA.setOnClickListener(selectChangedListener);        rbB.setOnClickListener(selectChangedListener);        rbC.setOnClickListener(selectChangedListener);        rbD.setOnClickListener(selectChangedListener);//单选题按钮监听         OnClickListener selectChangedListener=new View.OnClickListener() {                @Override                public void onClick(View v) {                    // TODO Auto-generated method stub                                        isSelected = true;                    if(v.getId()==rbA.getId()){                                                rbB.setEnabled(false);                        rbC.setEnabled(false);                        rbD.setEnabled(false);                     }else if(v==rbB){                                            rbA.setEnabled(false);                        rbC.setEnabled(false);                        rbD.setEnabled(false);                     }else if(v==rbC){                                        rbA.setEnabled(false);                        rbB.setEnabled(false);                        rbD.setEnabled(false);                     } else if(v==rbD){                                       rbA.setEnabled(false);                        rbB.setEnabled(false);                        rbC.setEnabled(false);                          }                                                        if(("

"+((Button) v).getText().toString()+"

").equals(subject[GPUtils.subjectLoaded-1][8])) { textViewSelectResult.setText("恭喜你,答对了!"); linearSelectResult.setVisibility(View.VISIBLE); GPUtils.wellDone+=1; }else { textViewSelectResult.setText("很遗憾,答错了!"); linearSelectResult.setVisibility(View.VISIBLE); } } };

 

 

转载于:https://www.cnblogs.com/lucky-star-star/p/3831129.html

你可能感兴趣的文章
构建一个运行在Azure虚拟机上的MySQL Spring Boot应用程序
查看>>
网易数据基础平台建设经验谈
查看>>
从起步到爆发,UPYUN云CDN架构演进之路
查看>>
NGINX应用性能优化指南(第五部分):吞吐量
查看>>
Modular Web Application with ASP.NET Core
查看>>
腾讯正式宣布成立技术委员会,要对组织架构下狠手
查看>>
微软把UWP定位成业务线应用程序开发平台
查看>>
网站安全监测 - Node实战
查看>>
开源公司内部的微信爬虫,寻求志同道合的人一起来改进
查看>>
重写yii2的数据提供器ArrayDataProvider类
查看>>
[译] Webpack 前端构建集成方案
查看>>
gulp-livereload实战应用
查看>>
mac和linux下mysql字符集设置问题
查看>>
如何直接访问github的html项目
查看>>
Scala 简介 [摘自 Scala程序设计 ]
查看>>
NodeJs sprity在window下使用的问题整理
查看>>
Numpy 中文用户指南 3.2 创建数组
查看>>
Docker 监控之 SaaS 解决方案
查看>>
HTTP权威指南:第三章
查看>>
javascript函数式编程入门小结
查看>>