• radioButton添加试题选项webview(二)


    由于项目里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(("<p>"+((Button) v).getText().toString()+"</p>").equals(subject[GPUtils.subjectLoaded-1][8]))    {
                    
                           textViewSelectResult.setText("恭喜你,答对了!");
                           linearSelectResult.setVisibility(View.VISIBLE);
                           
                           GPUtils.wellDone+=1;
                           
                        }else {
                            
                           textViewSelectResult.setText("很遗憾,答错了!");
                           linearSelectResult.setVisibility(View.VISIBLE);
                          
                          
                             }
                    
                    
                 }
                    
       };
            
  • 相关阅读:
    Docker之Harbor
    idea 代码块编辑(批量列编辑)快捷键 -- idea version 2018 不常用
    mysql 去除表中重复的数据,保留id最小的数据信息
    打家劫舍(动态规划+滚动数组+取模运算优化)
    利用线程异步调用
    idea 2019激活码
    mysql导出PDM表结构并带有注释
    安装GO
    GO语言
    项目启动
  • 原文地址:https://www.cnblogs.com/lucky-star-star/p/3831129.html
Copyright © 2020-2023  润新知