Android 各种Dialog例子

包括普通对话框、列表对话框、单选对话框、多选对话框、可编辑对话框。

Java:

package com.example.admin.dialog_1;

import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AlertDialog.Builder;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import static com.example.admin.dialog_1.R.layout.editdialog;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

		//获取xml上的几个button
        Button onebtn = findViewById(R.id.onebtn);
        Button twobtn = findViewById(R.id.twobtn);
        Button threebtn = findViewById(R.id.threebtn);
        Button fourbtn = findViewById(R.id.fourbtn);
        Button fivebtn = findViewById(R.id.fivebtn);

        final Builder builder = new AlertDialog.Builder(MainActivity.this);
        onebtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                builder.setTitle("普通对话框");
                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });               
                builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder.setNeutralButton("忽略", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder.create().show();
            }
        });

        twobtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Builder builder1 = new AlertDialog.Builder(MainActivity.this);
                builder1.setTitle("列表");
                builder1.setItems(new String[]{"计科1班", "计科2班", "计科3班", "计科4班", "计科5班", "计科6班"}, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder1.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder1.create().show();
            }
        });

        threebtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Builder builder2 = new AlertDialog.Builder(MainActivity.this);
                builder2.setTitle("单选");
                builder2.setItems(new String[]{"男", "女", "其他"}, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder2.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder2.create().show();
            }
        });

        final boolean[] checkstatus = new boolean[]{true,false,true,false};
        fourbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Builder builder3 = new AlertDialog.Builder(MainActivity.this);
                builder3.setTitle("多选");
                builder3.setMultiChoiceItems(new String[]{"学习", "运动", "摄影", "旅行"}, checkstatus, new DialogInterface.OnMultiChoiceClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which, boolean isChecked) {

                    }
                });
                builder3.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder3.create().show();
            }
        });


        fivebtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Builder builder4 = new AlertDialog.Builder(MainActivity.this);
                View view = getLayoutInflater().inflate(R.layout.editdialog,null);
                builder4.setTitle("可编辑");
                builder4.setView(view);
                builder4.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder4.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                builder4.create().show();
            }
        });
    }
}

Xml:


Flater xml:



你可能感兴趣的:(Android)