第十七篇-使用RadioGroup实现单项选择
上效果图
首先进行控件布局,一个textview,6个radiobutton,
main_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"> <TextView
android:id="@+id/textView"
android:layout_width="233dp"
android:layout_height="74dp"
android:textSize="35sp"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="25dp" /> <RadioGroup
android:id="@+id/RG"
android:layout_width="264dp"
android:layout_height="202dp"
android:layout_marginTop="16dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView"
tools:ignore="MissingConstraints"> <RadioButton
android:id="@+id/RB1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton1"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="62dp"
tools:layout_editor_absoluteY="87dp" /> <RadioButton
android:id="@+id/RB2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton2"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="62dp"
tools:layout_editor_absoluteY="143dp" /> <RadioButton
android:id="@+id/RB3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton3"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="62dp"
tools:layout_editor_absoluteY="214dp" /> <RadioButton
android:id="@+id/RB4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton4"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="62dp"
tools:layout_editor_absoluteY="278dp" /> <RadioButton
android:id="@+id/RB5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton5"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="62dp"
tools:layout_editor_absoluteY="356dp" /> <RadioButton
android:id="@+id/RB6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton6"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="61dp"
tools:layout_editor_absoluteY="429dp" />
</RadioGroup> </android.support.constraint.ConstraintLayout>
MainActivity.java
package com.example.aimee.radiogrouptest; import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends AppCompatActivity {
TextView textview;
RadioGroup RG;
RadioButton RB1;
RadioButton RB2;
RadioButton RB3;
RadioButton RB4;
RadioButton RB5;
RadioButton RB6; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview=findViewById(R.id.textView);
RG=findViewById(R.id.RG);
RB1=findViewById(R.id.RB1);
RB2=findViewById(R.id.RB2);
RB3=findViewById(R.id.RB3);
RB4=findViewById(R.id.RB4);
RB5=findViewById(R.id.RB5);
RB6=findViewById(R.id.RB6); RG.setOnCheckedChangeListener(ChangeRadioGroup);
}
private RadioGroup.OnCheckedChangeListener ChangeRadioGroup=new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if(checkedId==RB1.getId()&&RB1.isChecked()){
textview.setText(RB1.getText());
Toast.makeText(MainActivity.this,RB1.getText()+"被选择",Toast.LENGTH_SHORT).show();
}
else if(checkedId==RB2.getId()&&RB2.isChecked()){
textview.setText(RB2.getText());
Toast.makeText(MainActivity.this,RB2.getText()+"被选择",Toast.LENGTH_SHORT).show(); }
else if(checkedId==RB3.getId()&&RB3.isChecked()){
textview.setText(RB3.getText());
Toast.makeText(MainActivity.this,RB3.getText()+"被选择",Toast.LENGTH_SHORT).show(); }
else if(checkedId==RB4.getId()&&RB4.isChecked()){
textview.setText(RB4.getText());
Toast.makeText(MainActivity.this,RB4.getText()+"被选择",Toast.LENGTH_SHORT).show(); }
else if(checkedId==RB5.getId()&&RB5.isChecked()){
textview.setText(RB5.getText());
Toast.makeText(MainActivity.this,RB5.getText()+"被选择",Toast.LENGTH_SHORT).show(); }
else if(checkedId==RB6.getId()&&RB6.isChecked()){
textview.setText(RB6.getText());
Toast.makeText(MainActivity.this,RB6.getText()+"被选择",Toast.LENGTH_SHORT).show(); }
}
};
}
/res/values/string.xml
<resources>
<string name="app_name">RadioGroupTest</string>
<string name="radiobutton1">Android</string>
<string name="radiobutton2">Sysbian</string>
<string name="radiobutton3">WinCE</string>
<string name="radiobutton4">PalmOS</string>
<string name="radiobutton5">Linux</string>
<string name="radiobutton6">iphoneOS</string>
</resources>
第十七篇-使用RadioGroup实现单项选择的更多相关文章
- 解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译)
解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译) http://improve.dk/corrupting-databases-purpose-usin ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十七篇】:Django之【进阶篇】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十七篇】:Django【进阶篇】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- 单项选择RadioButton和多项选择CheckBox的使用
在Android中,可以通过RadioButton和RadioGroup的组合来实现单项选择的效果.而多项选择则是通过CheckBox来实现的. 1.单项选择RadioButton 我们知道,一 ...
- 阅读《Android 从入门到精通》(10)——单项选择
单项选择(RadioGroup) RadioGroup 是 LinearLayout 的子类,继承关系例如以下: android.view.ViewGroup android.widget.Linea ...
- 跟我学SpringCloud | 第十七篇:服务网关Zuul基于Apollo动态路由
目录 SpringCloud系列教程 | 第十七篇:服务网关Zuul基于Apollo动态路由 Apollo概述 Apollo相比于Spring Cloud Config优势 工程实战 示例代码 Spr ...
- Egret入门学习日记 --- 第十七篇(书中 7.4~8.2节 内容)
第十七篇(书中 7.4~8.2节 内容) 昨天看到 7.3 节,那么今天. 开始 7.4节. 好吧,这些其他的服务器运行知识,就不搞了... 至此,7.4节 内容结束. 开始 7.5节 内容. ...
- 微信小程序实战篇:商品属性联动选择(案例)
本期的微信小程序实战篇来做一个电商网站经常用到的-商品属性联动选择的效果,素材参考了一点点奶茶. 效果演示: 商品属性联动.gif 代码示例 1.commodity.xml <!-- < ...
随机推荐
- mysql 中出现:不能打开到主机的连接,在端口3306: 连接失败
由于某种原因,在服务器部署,然后mysql就连接不上了, navicat查看数据库正常,telnet怎么都不同,总会卡一会儿说遗失主机,最后终于找到解决办法 http://www.51testing. ...
- 不使用DataContext直接将ViewModels绑定到ItemsControl控件
在常规的MVVM设计模式中,都是通过DataContext将ViewModels的一个对象绑定到View的DataContext中,从而完成相应地绑定,在本文中我们将通过另外的一种思路来将ViewMo ...
- DAY06、元组、字典、集合
一.元组 1.定义:参数为for可以循环的对象 t1 = (1, 2) t2 = tuple((1, 2)) t3 = (1, ) #定义一个只有一个值的元组 2.常用操 ...
- python设计模式第十七天【解释器模式】
1.应用场景 (1)解释预先定义的文法 2.代码实现 #!/usr/bin/env python #!_*_ coding:UTF-8 _*_ from abc import ABCMeta, abs ...
- layui内部使用jQuery
layui是基于jQuery的框架,本身自带jQuery 根据官方推荐,是使用自带的好一点 这里记一下内部使用jQuery的方法: layui.use('jquery', function(){ va ...
- SQL to JSON Data Modeling with Hackolade
Review: SQL to JSON data modeling First, let’s review, the main way to represent relations in a rela ...
- codeforces703B
Mishka and trip CodeForces - 703B 小米什卡是一个伟大的旅行者,她访问了许多国家.在这次考虑去哪里旅行之后,她选择了XXX--这个美丽,但鲜为人知的北方国家. 以下是关 ...
- 基于 vue+vue-router+vuex+axios+koa+koa-router 本地开发全栈项目
因为毕业设计要做基于Node服务器的项目,所以我就想着用刚学的vue作为前端开发框架,vue作为Vue.js应用程序的状态管理模式+库,axios基于promise用于浏览器和node.js的http ...
- C语言itoa()函数和atoi()函数
以下是用itoa()函数将整数转换为字符串的一个例子: # include <stdio.h> # include <stdlib.h> void main (void) { ...
- 微信小程序——安装开发工具和环境【二】
准备 开发工具下载 获取APPID 安装工具 安装 接受协议 选择安装位置 等待安装完成 安装完成 选择项目 选择小程序 填写信息 确定 无误后,点击确定进入开发页面 建立普通快速启动模板界面