欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android 常用对话框

程序员文章站 2022-05-16 18:14:35
...

对话框经常以小窗口的形式展现
常用的对话框有六种

对话框
普通对话框
单选对话框
多选对话框
进度条对话框
消息对话框
自定义对话框

1.普通对话框
通常有“确定”和”取消“按钮。

方法名 功能
setTitle() 设置对话框标题
setIcon() 设置对话框图标
setPositiveButton() 设置对话框添加 按钮
setMessage() 设置对话框提示信息
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new AlertDialog.Builder(this)//绑定当前窗口
                .setTitle("Dialog对话框")//设置标题
                .setIcon(R.mipmap.ic_launcher)//设置图标
                .setPositiveButton("确定",null)//添加确定按钮
                .setNegativeButton("取消",null)//添加取消按钮
                .setMessage("确定退出吗")//设置提示细信息
                .create()//创建对话框
                .show();//显示对话框
    }
}

效果图
Android 常用对话框
2.单选对话框
单选对话框和RadioButton作用类似,只能选择一个选项,单选对话框通过AlertDialog对象调用setSingleChoiceItems()方法创建的。setSingleChoiceItems方法有三个参数,第一个参数建立数组,用于显示选项内容,第二个参数设置是否默认选中,“0”表示默认选中第一个选项,如果默认未选中,参数则写“-1”,第三个参数是设立监听。

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new AlertDialog.Builder(this)//绑定当前窗口
                .setTitle("图通对话框")//设置标题
                .setIcon(R.mipmap.ic_launcher)//设置图标
                .setPositiveButton("确定",null)//添加确定按钮
                .setSingleChoiceItems(new String[]{"男","女"},0,null)//第二个参数代表默认选中哪一个,如果都不选中设置-1
                .create()//创建对话框
                .show();//显示对话框
    }
}

效果图
Android 常用对话框
3.多选对话框
多选对话框通过调用AlertDialog的setMultiChoiceItems()方法创建。该方法有三个参数,第一个参数建立数组,用于显示选项内容,第二个参数是boolean数组,用来判断哪个选项需要勾选,如果没有选项选中则用“null”,如果有默认选中则该数组定义的长度要对应第1个参数设置的选项个数,第三个参数设置监听

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new AlertDialog.Builder(this)//绑定当前窗口
                .setTitle("图通对话框")//设置标题
                .setIcon(R.mipmap.ic_launcher)//设置图标
                .setPositiveButton("确定",null)//添加确定按钮
                //第一个参数显示内容,第二个参数代表哪个选项需要默认被勾选,如果没有则为null
        //第三个参数:为每一个多选项绑定一个监听器
                .setMultiChoiceItems(new String[]{"大学生","教师","*官员"},null,null)
                .create()//创建对话框
                .show();//显示对话框
    }
}

效果
Android 常用对话框
4.进度条对话框
在Android中提供了圆形进度条和水平进度条两种样式,通过setProgressStyle()方法设置进度条样式。常量ProgressDialog.STYLE_HORIZONTAL代表水平进度条,ProgressDialog.STYLE_SPINNER代表圆形进度条。

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ProgressDialog prodialog;
        prodialog = new ProgressDialog(this);
        prodialog.setTitle("进度条对话框");
        prodialog.setIcon(R.mipmap.ic_launcher);
        prodialog.setMessage("正在下载。。。");
        prodialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//ProgressDialog.STYLE_HORIZONTAL代表水平滚动条
        //ProgressDialog.STYLE_SPINNER代表圆形进度条
        prodialog.show();
    }
}

效果
Android 常用对话框
5.消息对话框
显示时间的长短是通过常量Toast.LENGTH_SHORT和Toast.LENGTH_LONG控制的

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //当前对话框、显示内容、显示时长Toast.LENGTH_LONG长时间显示
        //Toast.LENGTH_SHORT 短时间显示
        Toast.makeText(this,"你好",Toast.LENGTH_LONG).show();
    }
}

效果
Android 常用对话框

相关标签: Android