android-Android-单选按钮的值设定

问题描述

Android-单选按钮的值设定
求助,应用不管选中哪个按钮,价格总是525.00。不知道怎么搞的。

        //Get and set package selected.        radioPackageGroup = (RadioGroup)   findViewById(R.id.radTadPackage);        int selectedId = radioPackageGroup.getCheckedRadioButtonId();        btnPackage = (RadioButton) findViewById(selectedId);        String display_package_selected = btnPackage.getText().toString();         TadGlobals.getTadPackageInstance().setTadPackage(display_package_selected);             //Set package price.        double package_price = 0.00;        if(display_package_selected == ""Bronze""){            package_price = 150.00;        }else if(display_package_selected == ""Silver""){            package_price = 225.00;        }else if(display_package_selected == ""Gold""){            package_price = 375.00;        }else{            package_price = 525.00;        }        TadGlobals.getPackagePriceInstance().setPackagePrice(package_price);

解决方案

很显然,你这个是在初始化做的,获取btn的按钮的值
而你并没有写选中的监听事件

    a.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {        @Override        public void onCheckedChanged(RadioGroup radioGroup int i) {            //To change body of implemented methods use File | Settings | File Templates.        }    });

然后按照楼下的代码区设置

解决方案二:
swith(selectedId ) {
case R.id.childRadioButton1:
package_price = 150.00;
break;
...依次类推

解决方案三:
使用string.equals()方法进行比较:

if(display_package_selected.equals(""Bronze"")) {                package_price = 150.00;}else if(display_package_selected.equals(""Silver"")){                package_price = 225.00;}else if(display_package_selected.equals(""Gold"")){                package_price = 375.00;}else{                package_price = 525.00;}

解决方案四:
这个display_package_selected == ""Bronze""不对,String不能这样比较,改为display_package_selected.equals(""Bronze""),其它几个类似

解决方案五:
监听事件,要有回调响应。回调函数什么时候执行你的代码,要清楚,另外,建议楼主学会自己打log。

解决方案六:
给你的radiogroup设置监听事件,然后采用switch形式,把radiobutton的ID传进去,在相应的case ID中设置你的业务逻辑操作即可

时间: 2024-12-22 16:40:16

android-Android-单选按钮的值设定的相关文章

android各种声音类型级数设定及默认值

android各种声音类型级数设定及默认值            在audioservice.java文件中: /** @hide Maximum volume index values for audio streams */ private static final int[] MAX_STREAM_VOLUME = new int[] { 5, // STREAM_VOICE_CALL 7, // STREAM_SYSTEM 7, // STREAM_RING 15, // STREAM_

android中listpreference取值的问题

问题描述 android中listpreference取值的问题 程序中有一个listpreference.无论我如何运行代码,都有错误.现在我把方法贴上: string-array name="listArray" items: Mercedes, Audi, Porsche string-array name="listValues" items: car1, car2, car3 在listpreference部分的preferences.xml中有以下的代码

json-查询Android中存在的值

问题描述 查询Android中存在的值 应该怎么查询Android Json中已经存在的值? { "contacts": [ { "id": "c200", "name": "Michael Jordan", "email": "mj@gmail.com", "address": "xx-xx-xxxx,x - street, x - c

缓存-android 关于json获取值问题

问题描述 android 关于json获取值问题 后台是用了一个变量封装成接口给我的,我第一次解析是10正确,之后后台改成了200,我显示的还是10,不会是缓存问题,我其他从后台传过来的数据都是可以实时更新的(其他数据不是变量形式)不知道是前台的错还是后台的错 解决方案 Android中获取JSON 解决方案二: 让后台打印一下,返回的结构,你也打印一下接收到的结果,对一下 解决方案三: 如果你是用GET访问接口的话,用浏览器访问看看,是多少.另外可以检查一下你的代码,里面是不是缓存了相应的变量

android getContentResolver().insert()返回值问题

问题描述 android getContentResolver().insert()返回值问题 insert无返回值 newUri 为null 请问可能的原因有哪些? 解决方案 Android 设置铃声,getContentResolver().insert returns null 看看你是不是也是因为记录不唯一的问题. 你把测试数据写死在代码里面,每次执行的时候都会尝试插入相同的数据,这样就会导致记录不唯一而插入失败.

Android Studio获取SHA1值实例详解

Android Studio获取SHA1值实例详解 前言 使用百度地图的小伙伴们都会知道获取百度地图的密钥需要SHA1和包名,在Eclipse中,我们可以很方便的得知SHA1值,如下图: 但是在Android Studio中,该怎么获取SHA1的值呢?不要着急,马上呈上~ Android Studio获取SHA1值 强大的Android Studio为我们提供了Terminal这个工具,我们可以通过他进行相应命令从而获取所需内容. Java中提供了Keytool工具去让我们管理证书,那么接下来我

[android]android自动化测试十之单元测试实例

android源代码中每个app下中都自带了一个test用例,下面主要介绍下camra单元测试用例  在AndroidManifest.xml中标明了测试用例instrumentation函数入口  Java代码 <?xml version="1.0" encoding="utf-8"?> <!-- Copyright (C) 2008 The Android Open Source Project Licensed under the Apach

文档-android: android 中文件的备份问题

问题描述 android: android 中文件的备份问题 我想问一下,如果我的app 生成了几个文件,有办法压缩备份成一个新的文件吗.? 我看有.backup 后缀的文件,是怎么生成的呢? 谢谢..最好有API 或者文档什么的 解决方案 Android文件访问权限和路径问题Android 本地文件读取, 数据库文件备份android读SDCard中txt文件中文乱码问题 解决方案二: .backup是一些备份文件.总体说来 Android API Level 8及其以上Android系统提供

c++-在写函数时 是不是要把返回值都放在形参表里?把函数返回值设定为true/false?

问题描述 在写函数时 是不是要把返回值都放在形参表里?把函数返回值设定为true/false? 在写函数时 是不是要把返回值都放在形参表里?把函数返回值设定为true/false? 解决方案 主要还是看程序需要把,这种想法只是对于一些内存申请操作来说,函数在结束后就将函数内申请的控件释放.如果已经在外部申请好了内存,是可以当做返回值返回的.所以说并不一定就要把返回值放在形参表里. 解决方案二: 这也是一种方式,尤其对于要返回多个结果的时候,一般通过参数来传递结果.然后函数返回值来表示函数是否调用

DataGrid中由某列的值设定行的颜色

datagrid 今天真是的,又被界面搞的晕头转向. 为了实现.Net window DataGrid 的某一行可以根据该行某列的值的内容设定该行颜色的功能. 先贴一个连接,里面有DataGrid很多功能扩充的解决方案Windows Forms Datagrid 不过没有我这个需求的解决方案,最后终于还是在同事的帮助下搞定了. 由某一个单元格的值设定该单元格的颜色的实现我就不贴了,上面的连接里面有解决方案.下面是由某列的值设定整行颜色的一个解决方案. 关键是在定制的DataGridTextBox