Android实现单项、多项选择操作

本文实例为大家分享了Android实现单项、多项选择操作的相关代码,供大家参考,具体内容如下

1、单项选择
1.1.布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 tools:context="com.rj141.sb.kongjian.DateActivity"> 

 <TextView
  android:layout_marginLeft="10dp"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="2+3="
  android:textSize="22dp"
  /> 

 <RadioGroup
  android:layout_marginLeft="20dp"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="A.2"
   android:id="@+id/rb1"
   />
  <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="B.3"
   android:id="@+id/rb2"
   />
  <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="C.4"
   android:id="@+id/rb3"
   />
  <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="D.5"
   android:id="@+id/rb4"
   />
 </RadioGroup> 

 <Button
  android:id="@+id/submit"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="提交"/>
</LinearLayout>

1.2.Java文件

public class SingChoose extends AppCompatActivity {
 private Button btn;
 private RadioButton rbD;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.sing_choose); 

  rbD= (RadioButton) this.findViewById(R.id.rb4);
  btn= (Button) this.findViewById(R.id.submit);
  btn.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    if(rbD.isChecked()){
     Toast.makeText(SingChoose.this,"正确,请加五分",Toast.LENGTH_SHORT).show();
    }
    else {
     Toast.makeText(SingChoose.this,"错误,请减五分",Toast.LENGTH_SHORT).show();
    }
   }
  });
 }
} 

效果图:

2多项选择
2.1.布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 tools:context="com.rj141.sb.kongjian.CheckChoose"> 

 <TextView
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textSize="20dp"
  android:text="你喜欢下列哪些物品?"
  /> 

 <CheckBox
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="巧克力"
  android:id="@+id/cb1" /> 

 <CheckBox
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="冰淇淋"
  android:id="@+id/cb2" /> 

 <CheckBox
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="蛋糕"
  android:id="@+id/cb3" /> 

 <CheckBox
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="啤酒"
  android:id="@+id/cb4" /> 

 <CheckBox
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="肉"
  android:id="@+id/cb5" /> 

 <TextView
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textSize="18dp"
  android:id="@+id/tv" /> 

</LinearLayout>

2.2.Java文件

public class CheckChoose extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener { 

 private CheckBox cb1,cb2,cb3,cb4,cb5;
 private TextView tv;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.check_choose); 

  tv= (TextView) this.findViewById(R.id.tv);
  cb1= (CheckBox) this.findViewById(R.id.cb1);
  cb2= (CheckBox) this.findViewById(R.id.cb2);
  cb3= (CheckBox) this.findViewById(R.id.cb3);
  cb4= (CheckBox) this.findViewById(R.id.cb4);
  cb5= (CheckBox) this.findViewById(R.id.cb5);
  cb1.setOnCheckedChangeListener(this);
  cb2.setOnCheckedChangeListener(this);
  cb3.setOnCheckedChangeListener(this);
  cb4.setOnCheckedChangeListener(this);
  cb5.setOnCheckedChangeListener(this);
 } 

 @Override
 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
  String str="您喜欢:";
  if(cb1.isChecked()){
   str+=cb1.getText()+",";
  }
  if(cb2.isChecked()){
   str+=cb2.getText()+",";
  }
  if(cb3.isChecked()){
   str+=cb3.getText()+",";
  }
  if(cb4.isChecked()){
   str+=cb4.getText()+",";
  }
  if(cb5.isChecked()){
   str+=cb5.getText()+",";
  }
  tv.setText(str);
 }
} 

效果图:

以上就是本文的全部内容,希望对大家学习Android软件编程有所帮助。

(0)

相关推荐

  • Android单选按钮对话框用法实例分析

    本文实例讲述了Android单选按钮对话框用法.分享给大家供大家参考.具体如下: main.xml布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:l

  • 基于Android实现点击某个按钮让菜单选项从按钮周围指定位置弹出

    Android Material Design:PopupMenu Android Material Design 引入的PopupMenu类似过去的上下文菜单,但是更灵活. 如图所示: 现在给出实现上图PopupMenu的代码. 本例是一个普通的Button触发弹出PopupMenu. 测试的MainActivity.java : package zhangphil.materialdesign; import android.app.Activity; import android.os.B

  • Android RadioButton单选框的使用方法

    复制代码 代码如下: public class MainActivity extends Activity { public RadioGroup mRadioGroup1; public RadioButton mRadio1, mRadio2; @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.

  • Android checkbox的listView(多选,全选,反选)具体实现方法

    布局文件:[html]  复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?>  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"      android:layout_width="fill_parent"      android:layout_height=

  • Android中创建对话框(确定取消对话框、单选对话框、多选对话框)实例代码

    Android中可以创建三种对话框.确定取消对话框.单选对话框.多选对话框 android中的确定取消对话框演示示例 Android中使用单选对话框的演示案例 android中使用多选对话框的演示案例 实现代码如下 修改activity_main.xml文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.

  • Android程序开发中单选按钮(RadioGroup)的使用详解

    在还没给大家介绍单选按钮(RadioGroup)的使用,先给大家展示下效果图吧: xml文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_heig

  • android GridView多选效果的实例代码

    具体代码如下: main.xml 复制代码 代码如下: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:background="#000000" android:layout_width="fill_parent"

  • Android实现单项、多项选择操作

    本文实例为大家分享了Android实现单项.多项选择操作的相关代码,供大家参考,具体内容如下 1.单项选择 1.1.布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.co

  • Android 中CheckBox多项选择当前的position信息提交的示例代码

    先给大家展示下效果图: 废话不多说了,下面通过示例代码给大家介绍checkbox 多项选择当前的position信息提交,具体代码如下所示: package com.dplustours.b2c.View.activity; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import andro

  • Android WebView自定义长按选择实现收藏/分享选中文本功能

    效果图(1.3M) 一.前言 ** 戳这里可以去DEMO,来吧 ** 相信刚接触android不久的同志们,在面对产品提出的 : "自定义WebView页面中,长按文本的弹出选项.点击选择后,分享.转发.收藏选择文本" 这样的需求时,第一反应大部分是:这是系统行为,如果实现需要在web端实现. 但是web端实现的局限性太大,曾经也有过监听系统粘贴板,在用户点击复制的时候实现其他的逻辑,但是这样用户体验不好,所以自定义WebView中长按的弹出菜单,并在点击时返回选中文本的小控件闪亮登场

  • 支持多项选择的ExpandableListView

    本文实例为大家分享了ExpandableListView多项选择展示的具体代码,供大家参考,具体内容如下 目标(需求): 1. 创建一个可展开可收缩的列表: 2. 其列表项包含多个checkable的部件,当选择某一行时,该行包含的checkable的部件需要作出相应的变化: 3. 可以选择多个列表项,并且这些列表项可被读出 结果图: 实现: 1. 创建主layout用于规划列表显示.对于具体的列表项,为了实现的方便我们也创建一个layout文件. <?xml version="1.0&q

  • Android自定义view实现滚动选择控件详解

    目录 前言 需求 编写代码 主要问题 前言 上篇文章通过一个有header和footer的滚动控件(Viewgroup)学了下MeasureSpec.onMeasure以及onLayout,接下来就用一个滚动选择的控件(View)来学一下onDraw的使用,并且了解下在XML自定义控件参数. 需求 这里就是一个滚动选择文字的控件,还是挺常见的,之前用别人的,现在选择手撕一个,核心思想如下: 1.有三层不同大小及透明度的选项,选中项放在中间 2.接受一个列表的数据,静态时显示三个值,滚动时显示四个

  • ant design vue 表格table 默认勾选几项的操作

    为什么我同样的功能要用react .vue 都写一遍 ? 啊我真是不是闲的蛋疼啊(- o -)~zZ 在 ant design vue 中,表格的第一列是联动的选择框 截一张官方文档图,图示最后一排就是禁用状态 点击 checkbox 会触发onChange , 从而得到selectedRowKeys,selectedRowKeys就是选中的 key 数组. onChange: (selectedRowKeys, selectedRows) => { console.log(`selectedR

  • Flutter 底部弹窗如何实现多项选择

    多选和单选的不同之处 单选的时候,选中一个就可以直接把结果返回,因此本身底部弹窗无需状态管理.但到多选的时候,需要知道当前选中的选项,有选项被点击的时候需要存储下来,当再次被点击的时候要清空这个选项,同时界面还需要同步更新,因此就涉及到状态管理了. 实现方式 在Flutter 中提供了一个 StatefulBuilder 的类,提供了一个 builder方法构建有状态组件,并且提供了状态更新方法,因此在里面完成状态管理. StatefulBuilder(builder: (context1, s

  • Android导航栏功能项的显示与屏蔽介绍

     Android 的导航栏有诸多功能,例入 截屏,音量加,音量减,最近任务,菜单.返回,主页面,输入法开关 ...... 代码源路径:frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\NavigationBarView.java public ButtonDispatcher getScreenshotButton() { return mButtonDispatchers.get(R.id.sc

  • Angular多选、全选、批量选择操作实例代码

    在前台开发过程中,列表批量选择是一个开发人员经常遇到的功能,列表批量选择的实现方式很多,但是原理基本相同,本文主要来讲AngularJs如何简单的实现列表批量选择功能. 首先来看html代码 <table cellpadding="0" cellspacing="0" border="0" class="datatable table table-hover dataTable"> <thead> &l

  • 选择器的朋友可以试试这个思路 延迟执行归并选择操作

    这样像类似下面的四个同一代码段中的4个选择操作 $class("a").color("green"); $class("b").color("red"); $class("c").color("green"); $class("d").color("red"); 最终只需要一次遍历就可以实现了. 因为之前么有太关注选择器的问题,不知道是不是我out

随机推荐