zoukankan      html  css  js  c++  java
  • Android基础——对话框

    写了四种对话框

    布局文件

    <?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"
        android:orientation="vertical"
        tools:context=".MainActivity">
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="确定取消对话框" />
        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="列表对话框"/>
        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="单选列表框"/>
        <Button
            android:id="@+id/button4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="多选列表框"/>
    
    </LinearLayout>

    java代码

    package com.example.mydialogi;
    
    import androidx.appcompat.app.AlertDialog;
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.app.Dialog;
    import android.content.DialogInterface;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
    
    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            /*
            * 带“确定”“取消”按钮的对话框
            * */
            Button button1 = (Button)findViewById(R.id.button1);
            button1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //创建一个AlterDialog对象
                    AlertDialog alertDialog = new AlertDialog.Builder(
                            MainActivity.this
                    ).create();
                    alertDialog.setIcon(R.drawable.b);
                    alertDialog.setTitle("标题");
                    alertDialog.setMessage("内容");
                    //设置按钮及其响应
                    alertDialog.setButton(
                            DialogInterface.BUTTON_NEGATIVE, "取消", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    Toast.makeText(
                                            MainActivity.this,"选择了取消",Toast.LENGTH_SHORT
                                    ).show();
                                }
                            }
                    );
                    alertDialog.setButton(
                            DialogInterface.BUTTON_POSITIVE, "确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    Toast.makeText(
                                            MainActivity.this,"选择了确定",Toast.LENGTH_SHORT
                                    ).show();
                                }
                            }
                    );
                    alertDialog.show();
                }
            });
    
            /*
            *   列表对话框
            * */
            Button button2 = (Button)findViewById(R.id.button2);
            button2.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //带四个列表项的列表对话框
                    final String[] Items = new String[]{
                            "A","B","C","D"
                    };
                    //创建一个Builder对象
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setIcon(R.drawable.b);
                    builder.setTitle("标题");
                    //添加列表项
                    builder.setItems(Items, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(
                                    MainActivity.this,"选择了【"+Items[which]+"】",Toast.LENGTH_SHORT
                            ).show();
                        }
                    });
                    builder.create().show();//创建并显示对话框
                }
            });
    
            Button button3 = (Button)findViewById(R.id.button3);
            button3.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //带单选列表项的对话框
                    final String[] items = new String[]{
                            "A","B","C","D"
                    };
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setTitle("标题");
                    builder.setIcon(R.drawable.b);
                    //添加列表项
                    builder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(
                                    MainActivity.this,"选择的是【"+items[which]+"】",Toast.LENGTH_SHORT
                            ).show();
                        }
                    });
                    //添加确定按钮
                    builder.setPositiveButton("确定",null);
                    builder.create().show();
                }
            });
    
            /*
            * 带多选列表项的对话框
            * */
            Button button4 = (Button)findViewById(R.id.button4);
            button4.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    final boolean[] checkedItems = new boolean[]{
                        false,true,false,true,false
                    };
                    final String[] items = new String[]{
                            "A","B","C","D","E"
                    };
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setIcon(R.drawable.b);
                    builder.setTitle("标题");
                    builder.setMultiChoiceItems(
                            items, checkedItems, new DialogInterface.OnMultiChoiceClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                                   checkedItems[which]=isChecked;//改变被操作选项的状态
    
                                }
                            }
                    );
                    builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            String result = "";
                            for(int i=0;i<items.length;i++){
                                if(checkedItems[i]==true){
                                    result += items[i] + " ";
                                }
                            }
                            if(!"".equals(result)){
                                Toast.makeText(
                                        MainActivity.this,"已选择了【"+result+"】",Toast.LENGTH_SHORT
                                ).show();
                            }
                        }
                    });//添加确定按钮
                    builder.create().show();
                }
            });
        }
    }
  • 相关阅读:
    py 中反射的基本应用和总结
    py内置函数
    py 中 函数基础
    tomcat用户管理权限(即访问到tomcat时可进行配置管理)
    py 中对接口数据的简单分析处理
    py中的 字典‘排序 ' 方法-lambda
    py 中 dict字典常用操作
    py 中元组tuple 常用操作
    py 中 list列表常用操作
    py中 字符串常用操作
  • 原文地址:https://www.cnblogs.com/zsben991126/p/12244212.html
Copyright © 2011-2022 走看看