一次仅选择一个单选按钮

2024-04-08

我的单选按钮组中有两个单选按钮。我还有 2 androd:button checkbox- 用于取消选择单选按钮时,以及 checkbox_v 用于用户选择复选框时。我还实现了一个方法onRadioButtonClick为了确保只有一个单选按钮具有drawable:checkbox,而另一个单选按钮具有checkbox_v。我怎样才能实现 onRadioClick 来做到这一点?任何想法?

public void onRadioButtonClick(View v)
{
    RadioButton button = (RadioButton) v;
    boolean checkBox1Selected;
    boolean checkBox2Selected = false;

    Toast.makeText(MainActivity.this,
        button.getId()+ " was chosen."+R.id.wificheckBox,
        Toast.LENGTH_SHORT).show();

    if ( button.getId() ==R.id.wificheckBox) {
        // Toggle status of checkbox selection
        checkBox1Selected = radiowifiButton.isChecked();

        // Ensure that other checkboxes are not selected
        if (checkBox2Selected) {
            radiomobileButton.setChecked(false);
            checkBox2Selected = false;
        }
        else if (button.getId() ==R.id.wifimobilecheckBox) {
            // Toggle status of checkbox selection
            checkBox2Selected = radiomobileButton.isChecked();
            // Ensure that other checkboxes are not selected
            if (checkBox1Selected) {
                radiowifiButton.setChecked(false);
                checkBox1Selected = false;
            }
        }
    }

main xml

<RadioGroup
    android:id="@+id/radioGroup"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true"
    android:layout_below="@+id/ll_1"
    android:layout_marginLeft="20dp">

<LinearLayout
    android:id="@+id/ll_2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/ll_1"
    android:layout_marginLeft="20dp"
    android:orientation="horizontal" >

    <RadioButton
        android:id="@+id/wifimobilecheckBox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:button="@drawable/button_radio"
        android:checked="true"
        android:onClick="onRadioButtonClick" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/wificheckBox"
        android:layout_toRightOf="@+id/wificheckBox"
        android:paddingLeft="15dp"
        android:text="WiFi or mobile network"
        android:textColor="#333333"
        android:textSize="20dp" />
</LinearLayout>

<LinearLayout
    android:id="@+id/ll_3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/ll_2"
    android:paddingTop="20dp"
    android:layout_marginLeft="20dp"
    android:orientation="horizontal" >

    <RadioButton
        android:id="@+id/wificheckBox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:button="@drawable/button_radio"

        android:onClick="onRadioButtonClick" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/wificheckBox"
        android:layout_toRightOf="@+id/wificheckBox"
        android:paddingLeft="15dp"
        android:text="WiFi "
        android:textColor="#333333"
        android:textSize="20dp" />
</LinearLayout>

</RadioGroup>

可绘制按钮收音机

<item android:state_checked="true"android:state_pressed="false" android:drawable="@drawable/checkbox_v"/><item android:state_checked="false"android:state_pressed="false"'android:drawable="@drawable/checkbox"/>

如果它们位于单选组中,则一次只能选择一个。如果您希望两者都能被选中,请将它们从单选组中删除。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一次仅选择一个单选按钮 的相关文章

  • Whatsapp 在 Android 中共享音频文件时正在剪切音频文件

    我在共享格式不是 mp3 的音频文件时遇到问题 文件被共享 但长度较短 例如 如果文件有 10 秒 则仅共享 5 秒 如果我使用 mp3 格式 它会完全共享 但其他格式会出现问题 注意 该文件在其他应用程序 如Messenger 中共享没有
  • fresco 的 Proguard 错误

    我正在使用 ProGuard 当我在发布配置中运行项目时 出现以下错误 Warning com facebook imagepipeline bitmaps DalvikBitmapFactory can t find referenced
  • Sqlite 查询检查 - 小于和大于

    return mDb query DATABASE TABLE new String KEY ROWID KEY LEVEL KEY LEVEL gt 3 lt 5 null null null null 我究竟做错了什么 它返回的值全部高
  • Android,让文本切换器成为中心?

    如何集中我的文本切换器 我尝试过设置重力 但似乎不起作用 ts setFactory new ViewFactory public View makeView TextView t new TextView this t setTypefa
  • Android 上通过 JSCH 的基本 SSH 连接

    作为来自此的用户question https stackoverflow com questions 14323661 simple ssh connect with jsch和这个tutorial http eridem net andr
  • 如何在 Android 中创建刮刮卡?

    我需要为我在学校的期末项目创建一个 刮刮卡 应用程序 但找不到如何实现刮刮事件的方法 如何创建背景图像并在其上放置灰色矩形 所以当我刮刮这些矩形时我会看到他们下面的图片 实现必须在 Android 中 因为我还不知道如何在 Objectiv
  • 如何从静态快捷方式启动活动的现有实例

    我的应用程序中有一个活动 MainActivity 并且有一个静态快捷方式 指向 TempActivity 由于静态快捷方式将始终设置 FLAG ACTIVITY NEW TASK 和 FLAG ACTIVITY CLEAR TASK 因此
  • PhoneGap 是应用程序开发的好选择吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 用于代码生成的 ANTLR 工具版本 4.7.1 与当前运行时版本 4.5.3 不匹配

    我正在开发一个 Android 应用程序 当前使用 DSL 和一些库 突然构建给了我这个错误 任务 app kaptDebugKotlin 失败 用于代码生成的 ANTLR 工具版本 4 7 1 与当前运行时版本 4 5 3 不匹配 用于解
  • 我可以使用“导入 com.facebook.FacebookSdk;”使用 Facebook SDK 3.23.1?

    在我的 app build gradle 文件中 我有compile com facebook android facebook android sdk 3 23 1 在我的 BaseActivity java 文件 其中有 public
  • 将搜索结果更新为 Android 中的 Lazy Adapter

    我有项目列表 想为其实现搜索功能 因此 我有一个带有 addTextChangedListener 的文本框 搜索结果运行良好 但当我尝试将结果设置为 ListView 时 新结果将附加到旧结果中 我正在使用惰性适配器 如何清除适配器中的旧
  • Android - 内容值覆盖现有行

    我正在尝试使用插入值ContentValues 我已将 5 个值插入到 5 列中 运行应用程序后 我只有最后一组值的行ContentValues 前四组未插入 ContentValues cv new ContentValues cv pu
  • 如何在Android中隐藏应用程序标题? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想隐藏应用程序标题栏 您可以通过编程来完成 import android app Activity import android os
  • UnsupportedOperationException:特权进程中不允许使用 WebView

    我在用android sharedUserId android uid system 在我的清单中获得一些不可避免的权利 从 HDMI 输入读取安卓盒子 http eweat manufacturer globalsources com s
  • 改造Android基本且简单的问题

    我的服务器返回简单的 Json 结果 如下所示 message Upload Success 我正在尝试将结果放入改造模型类中 public class MyResponse SerializedName message String me
  • Android 将菜单项在操作栏中向左对齐

    我的应用程序中有一个操作栏 它显示我定义的菜单项res menu activity main xml 我的菜单项在操作栏上向右对齐 我希望它们左对齐 我为此找到的唯一解决方案使用了自定义操作栏 如下所示 将菜单项放置在 Honeycomb
  • Exif 方向标签返回 0

    我正在开发一个自定义相机应用程序 我面临以下问题 当我尝试使用检索方向时ExifInterface 它总是返回 0 ORIENTATION UNDEFINED 这使我无法将图像旋转到正确的状态 从而无法正确显示 我使用示例代码来设置相机旋转
  • 在android中的日期选择器对话框中显示当前日期

    我多次尝试在日期选择器对话框中显示当前日期 但失败了 它显示 1 1 1990 我已经遵循了堆栈溢出的一些答案 但不幸的是这些对我不起作用 谁能解释一下在日期选择器对话框中显示当前日期的代码 谢谢 It may help you publi
  • RecyclerView元素更新+异步网络调用

    我有一个按预期工作的回收视图 我的布局中有一个按钮可以填充列表 该按钮应该进行异步调用 根据结果 我更改按钮的外观 这一切都发生得很好 但是 当我单击按钮并快速向下滚动列表时 异步调用的结果会更新新视图的按钮 代替旧视图的视图 我该如何处理
  • 将数据放入短信发送意图中?

    我想发送短信 如果文字太长 我会将其分成多条消息 我试图将一些额外的信息放入 已发送 意图中 以了解哪个部分已发送 以及所有部分何时完成 ArrayList

随机推荐

  • AnyObject 尝试转换为 Equatable

    我有一个Equatable class class Item Equatable var value AnyObject var title String init title String value AnyObject self tit
  • 何时使用 IOC 容器?

    我试图了解何时应该使用容器而不是手动注入依赖项 如果我有一个使用 1 2 个接口的应用程序 并且每个接口只有 1 2 个具体实现 我会倾向于自己处理 如果我有一个使用 2 3 个接口的小型应用程序 并且每个接口有 2 3 个具体实现 我应该
  • 删除 woocommerce 完整或基于订单元处理电子邮件

    我正在尝试根据某些订单元删除处理 或完整 电子邮件 我正在使用 POS 系统并让客户通过客户发票电子邮件付款 初始订单状态为待付款 我想 a 测试是否使用 pos 下订单 b 删除 正在处理 或 完成 电子邮件 我似乎无法让 if 语句逻辑
  • 由于找不到资源“solrconfig.xml”而无法创建新的 Solr 核心

    我刚刚安装了 Solr 并想创建一个新的核心 但出现此错误 org apache solr common SolrException Error CREATEing SolrCore new core Unable to create co
  • “查找”或任何其他工具可以广度优先搜索文件吗?

    有时我知道某个文件并不那么深 但是非常密集的子目录不允许我轻松找到我想要的文件 Can find http www gnu org software findutils manual html mono find html 或任何其他工具
  • 编译器如何知道 C++ constexpr 计算不会触发未定义的行为?

    C 标准mandates编译器要检查未定义的行为 in C constexpr 计算 In 这次演讲 https www youtube com watch v yG1OZ69H o Chandler Carruth 指出 在检查 UB 时
  • 如何在 ruby​​ 中保留我的浮点数

    所以我正在尝试一些代码将数字转换为字符串 但是 我注意到在某些情况下它不会保留最后两位小数 例如 我输入 1 01 和 1 04 进行加法 然后得到 2 04 如果我只输入 1 05 它会保留该数字并准确返回 我明白发生了什么事情正在四舍五
  • SAML 签名证书 - 哪种 SSL 证书类型?

    我们目前正在使用 SAML 2 0 开发 SSL 解决方案 到目前为止 一直使用自签名证书来签署 XML 请求 但是 当我们转向生产时 我们希望使用来自证书颁发机构的证书 但我不太确定要购买什么类型的证书 因为它们都是以网站为中心的 例如单
  • QT:如何每秒循环一个方法? C++

    我创建了一个 Qt 项目 它在小部件上显示一个圆圈 然后我有一个方法 每次调用该方法时都会在不同位置重新绘制圆 我想要的是在 for 循环中运行该方法 比如说十次 并显示每秒重绘圆圈的 10 个位置 大致如下 void method pai
  • 在 Android 中添加地理围栏时出错(状态代码 1000)

    我收到错误onAddGeofencesResult int statusCode String geofenceRequestIds 回调与statusCode 1000 我启用了 GPS 和 WiFi 我还有 Google Play 服务
  • MasterPage .FindControl 在类中

    我尝试在从内容页面访问母版页时找到一个控件 确切地说是一个图像按钮 以下是母版页html代码
  • 使用 ggplot2 根据填充值重新排序堆叠条形图 x

    进行了包含 5 个问题的调查 这些问题有相同的可能答案 以下是数据 经过重新调整以使用 ggplot2 进行绘图 library tidyr library magrittr data lt data frame ID c 1 500 q1
  • R 和 Leaflet:如何跨多行排列标签文本

    假设您有以下数据框 cities data frame name c Madrid Barcelona Sevilla country c Spain Spain Spain region c Comunidad de Madrid Cat
  • 如何跨内部 App Engine 模块验证请求?

    我在 Google App Engine 中有一个应用程序 包含 2 个模块 A and B A处理用户请求并且无需身份验证即可使用 B是一个微服务 在以下情况下执行某些任务A需要它 所以我们有A向B using urlfetch from
  • 大对象堆压缩,什么时候好?

    首先 多大才算大 有没有办法确定堆中对象有多大 Net 4 5 1 附带了这个LargeObjectHeapCompactionMode LargeObjectHeapCompactionMode 属性设置为后 GCLargeObjectH
  • 客户端正在使用不受支持的 Socket.IO 或 Engine.IO 协议版本 错误

    我试图在树莓派 4 中使用flask socketio socketIO client 和 SOCKET IO 在 python 中运行客户端和服务器 但出现以下错误 The client is using an unsupported v
  • 再次调用信号处理程序本身

    我看到一段代码说明了如何进行安全信号处理 我不明白为什么信号处理程序再次调用signal sig catch alarm 这样做的理由是什么 没有它 代码也能工作 include
  • 在 Android 4+ 中使用 Android TrustStore for aSmack (ICS)

    我不是密钥库方面的专家 并且很难理解其中的细微差别 但这就是我所取得的进展 在使用 asmack 构建创建 xmpp 连接时发现here https github com Flowdalic asmack人们仍然需要更改信任库 通常可以说是
  • Android:不显示启动画面,为什么?

    我正在努力学习Android 从到目前为止我读过的文档中 我无法弄清楚如何显示启动视图 在睡眠期间屏幕保持空白 看来我需要为主布局启动一个新的活动 但这似乎很浪费 飞溅应该永远消失 我想重用它的线程 import android app A
  • 一次仅选择一个单选按钮

    我的单选按钮组中有两个单选按钮 我还有 2 androd button checkbox 用于取消选择单选按钮时 以及 checkbox v 用于用户选择复选框时 我还实现了一个方法onRadioButtonClick为了确保只有一个单选按