AlertDialog的使用

来源:互联网 发布:头晕是怎么回事 知乎 编辑:程序博客网 时间:2024/05/05 01:41

一、AlertDialog创建简单列表项对话框核心代码如下:

final String items[] = getResources().getStringArray(R.array.books);                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);                builder.setTitle("简单的列表项对话框").setIcon(R.mipmap.ic_launcher)                        .setItems(items, new DialogInterface.OnClickListener() {                            @Override                            public void onClick(DialogInterface dialog, int which) {                                Toast.makeText(MainActivity.this, "选中了"+items[which], Toast.LENGTH_SHORT).show();                            }                        });                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        Toast.makeText(MainActivity.this, "点击了确定", Toast.LENGTH_SHORT).show();                    }                });                builder.setNegativeButton("取消",null);                AlertDialog dialog = builder.create();                dialog.show();</span>

其中数组books为xml资源,定义在res/values/array.xml中,代码如下:

<?xml version="1.0" encoding="utf-8"?><resources>    <string-array name="books">        <item>基础英语</item>        <item>工程数学</item>        <item>高等计算机网络</item>        <item>软件安全</item>    </string-array></resources></span>
getResource().getStringArray(R.array.X)可以从xml数组文件中获得字符串数组


二、AlertDialog创建单选列表项对话框

将builder.setItems()改为builder.setSingleItems(items[],int(默认选中项的索引),listener);


三、AlertDialog创建多选列表项对话框

将上面例子中的builder.setItems()改为builder.setMultiChoiceItems(items[],new boolean[]{false,true,true}); //此为默认选中2、3项

自定义列表项对话框还可以使用builder.setAdapter(Adapter adapter,listener)来填充对话框中的内容


四、自定义View对话框

1.先建立layout文件,作为自定义View对话框的内容界面

2.使用View view = getLayoutInflater.inflate(R.layout.x,null) 获得你定义的界面

3.使用builder.setView(view)即可


注:对话框风格的窗口设置

在AndroidManifest.xml文件中对相应的Activity的主题设置成对话框风格的主题 


1 0
原创粉丝点击