首页 Android Android 弹出对话框多种样式(输入框,单选列表,复选列表)

Android 弹出对话框多种样式(输入框,单选列表,复选列表)

作者:胡同里的砖头 围观群众:311 更新于:2023-03-14

简单拖拽一个按钮,绑定一个test事件,然后运用如下代码:

package com.example.test_alert;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void test01(View view){
//创建一个警告对话框
AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("这里是提示信息");
builder.setMessage("对话框的内容在这儿");

AlertDialog.Builder builder1 = builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,"选择了确定",Toast.LENGTH_SHORT).show();
}

});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,"选择了取消",Toast.LENGTH_SHORT).show();

}
});
builder.setNeutralButton("再想想", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,"选择了再想想",Toast.LENGTH_SHORT).show();

}
});

AlertDialog alertDialog =builder.create();//这个方法可以返回一个alertDialog对象
alertDialog.show();

}
}


一个基本的警告对话框就制作完成了,警告对话框的选择按钮建议不超过三个,否则会影响用户的体验,一般都是放两个(确认、取消)或者三个(满意、一般、不满意)等等。


警告对话框改进
多个字符串提示框

基本对话框实现以后,我们发现上面提示的文字仅仅是一个字符串,我们还可以做出改进,让它显示多个字符串。
public void test01(View view){
//创建一个警告对话框
AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("这里是提示信息");
builder.setItems(ss, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,ss[which],Toast.LENGTH_SHORT).show();
}
});
如图,setItems方法可以将一个数组作为提示的内容,并且可以设置响应的监视器来响应。



单选框
当然,内容也可以是单选框:
builder.setSingleChoiceItems(ss,0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,ss[which],Toast.LENGTH_SHORT).show();
}
});
按照以上代码,我们可以对三个字符串进行选择。相比较于上一个方法,这个方法多了一个参数0,表示点开以后系统默认选择第0个参数,我们也可以设置1或者2,让它默认选择后两个字符串。



多选框

多选也是可以的:
        builder.setMultiChoiceItems(ss, null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
Toast.makeText(MainActivity.this,ss[which],Toast.LENGTH_SHORT).show();
}
});
第二个参数同样是默认的选择情况,我们可以选择传入null,或者一个非空的布尔类型的数组,表示最初的选择情况。


  • 本文标题: Android 弹出对话框多种样式(输入框,单选列表,复选列表)
  • 文章分类:【Android】
  • 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.
留言评论
站点声明:
1、本站【胡同里的砖头】个人博客,借鉴网上一些博客模板,取其各优点模块自行拼装开发,本博客开发纯属个人爱好。
2、所有笔记提供给广大用户交流使用,可转载,可复制,纯个人开发所遇问题锦集记录使用
Copyright © huzlblog.com All Rights Reserved. 备案号:苏ICP备2021056683号-8