Android实现弹出列表、单选、多选框

 更新时间:2020年07月27日 09:42:44   作者:zst1303939801  
这篇文章主要为大家详细介绍了Android实现弹出列表、单选、多选框,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

脚本之家 / 编程助手:解决程序员“几乎”所有问题!
脚本之家官方知识库 → 点击立即使用

本文实例为大家分享了Android实现弹出列表、单选、多选框的具体代码,供大家参考,具体内容如下

效果图如下:

需要建一个menu

xml布局如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="com.example.lyp1020k.lv.MainActivity"
 android:orientation="vertical">
  
 <Button
 android:id="@+id/button1"
 android:text="列表框"
 android:onClick="showList"
 android:layout_width="match_parent"
 android:layout_height="wrap_content" />
  
 <Button
 android:id="@+id/button2"
 android:text="单选列表"
 android:onClick="showSingleAlertDialog"
 android:layout_width="match_parent"
 android:layout_height="wrap_content" />
  
 <Button
 android:id="@+id/button3"
 android:text="多选按钮"
 android:onClick="showMutilAlertDialog"
 android:layout_width="match_parent"
 android:layout_height="wrap_content" />
  
</LinearLayout>

Java代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
  
public class MainActivity extends AppCompatActivity {
  
 private AlertDialog alertDialog1; //信息框
 private AlertDialog alertDialog2; //单选框
 private AlertDialog alertDialog3; //多选框
  
 private Button button1;
 private Button button2;
 private Button button3;
  
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 init();
 }
  
 public void init(){
 button1 = (Button) findViewById(R.id.button1);
 button2 = (Button) findViewById(R.id.button2);
 button3 = (Button) findViewById(R.id.button3);
 }
  
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
 getMenuInflater().inflate(R.menu.mian, menu);
 return true;
 }
  
 public void showList(View view){
 final String[] items = {"列表1", "列表2", "列表3", "列表4"};
 AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
 alertBuilder.setTitle("这是列表框");
 alertBuilder.setItems(items, new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 Toast.makeText(MainActivity.this, items[i], Toast.LENGTH_SHORT).show();
 alertDialog1.dismiss();
 }
 });
 alertDialog1 = alertBuilder.create();
 alertDialog1.show();
 }
  
 public void showSingleAlertDialog(View view){
 final String[] items = {"单选1", "单选2", "单选3", "单选4"};
 AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
 alertBuilder.setTitle("这是单选框");
 alertBuilder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 Toast.makeText(MainActivity.this, items[i], Toast.LENGTH_SHORT).show();
 }
 });
  
 alertBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 alertDialog2.dismiss();
 }
 });
  
 alertBuilder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 alertDialog2.dismiss();
 }
 });
  
 alertDialog2 = alertBuilder.create();
 alertDialog2.show();
 }
  
 public void showMutilAlertDialog(View view){
 final String[] items = {"多选1", "多选2", "多选3", "多选4"};
 AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
 alertBuilder.setTitle("这是多选框");
 /**
 *第一个参数:弹出框的消息集合,一般为字符串集合
 * 第二个参数:默认被选中的,布尔类数组
 * 第三个参数:勾选事件监听
 */
 alertBuilder.setMultiChoiceItems(items, null, new DialogInterface.OnMultiChoiceClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i, boolean isChecked) {
 if (isChecked){
  Toast.makeText(MainActivity.this, "选择" + items[i], Toast.LENGTH_SHORT).show();
 }else {
  Toast.makeText(MainActivity.this, "取消选择" + items[i], Toast.LENGTH_SHORT).show();
 }
 }
 });
 alertBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 alertDialog3.dismiss();
 }
 });
  
 alertBuilder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialogInterface, int i) {
 alertDialog3.dismiss();
 }
 });
  
  
 alertDialog3 = alertBuilder.create();
 alertDialog3.show();
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。 

蓄力AI

微信公众号搜索 “ 脚本之家 ” ,选择关注

程序猿的那些事、送书等活动等着你

相关文章

  • 详解Android TableLayout表格布局

    详解Android TableLayout表格布局

    表格布局的标签是TableLayout,TableLayout继承了LinearLayout。所以它依然是一个线性布局,通过本文给大家介绍Android TableLayout表格布局,感兴趣的朋友一起学习吧
    2016-02-02
  • Android中的图片优化完全指南

    Android中的图片优化完全指南

    这篇文章主要给大家介绍了关于Android中图片优化的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • Android 如何在私有空间创建文件

    Android 如何在私有空间创建文件

    在Android应用程序中,我们经常需要在私有空间中创建文件来存储应用数据,例如用户配置文件、日志文件等,本文将介绍如何在Android应用中使用Java代码创建文件并将其保存在私有空间中,感兴趣的朋友跟随小编一起看看吧
    2024-06-06
  • Android 自定义gradle property详解及实例代码

    Android 自定义gradle property详解及实例代码

    这篇文章主要介绍了Android 自定义gradle property详解及实例代码的相关资料,需要的朋友可以参考下
    2017-02-02
  • Android利用HelloChart绘制曲线

    Android利用HelloChart绘制曲线

    这篇文章主要为大家详细介绍了Android利用HelloChart绘制曲线,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Android实现加法计算器

    Android实现加法计算器

    这篇文章主要为大家详细介绍了Android实现加法计算器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Android打开手机相册获取图片路径

    Android打开手机相册获取图片路径

    这篇文章主要为大家详细介绍了Android打开手机相册获取图片路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • android SDk中常用的java包介绍

    android SDk中常用的java包介绍

    在android的应用程序开发中,通常使用的是java语言,除了需要熟悉java语言的基础知识之外,还需要了解android提供的扩展的java功能。android SDK中API提供一些扩展的java 类库,类库分为若干个包,每个包中包含若干个类
    2014-05-05
  • Android开发实现的标准体重计算器功能示例

    Android开发实现的标准体重计算器功能示例

    这篇文章主要介绍了Android开发实现的标准体重计算器功能,结合实例形式分析了Android体重计算器的界面布局与功能实现相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • Android三种实现定时器的方法

    Android三种实现定时器的方法

    本文给大家分享了3种Android实现定时器的方法的示例,,需要的朋友可以参考下
    2015-02-02

最新评论