package com.zsy.dialog;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.BottomSheetBehavior;
import android.support.design.widget.BottomSheetDialog;
import android.support.v7.app.AppCompatActivity;
import android.view.Gravity;
import android.view.View;
import android.view.ViewTreeObserver;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.TextView;
import android.widget.Toast;
import java.util.Timer;
import java.util.TimerTask;
/*
* 项目名: Dialog
* 包名: com.zsy.dialog
* 文件名: MainActivity
* 创建者: 阿钟
* 创建时间: 2017/1/14 22:36
* 描述: TODO 对话框练习
*/
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button normal;
private Button single;
private Button halfCustom;
private Button custom;
private Button item;
private Button multi;
private Button circleProgress;
private Button lineProgress;
private Button bottomSheet;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initListener();
}
/**
* 初始化控件监听
*/
private void initListener() {
normal.setOnClickListener(this);
single.setOnClickListener(this);
halfCustom.setOnClickListener(this);
custom.setOnClickListener(this);
item.setOnClickListener(this);
multi.setOnClickListener(this);
circleProgress.setOnClickListener(this);
lineProgress.setOnClickListener(this);
bottomSheet.setOnClickListener(this);
}
/**
* 寻找布局控件
*/
private void initView() {
normal = (Button) findViewById(R.id.dialog_normal);
single = (Button) findViewById(R.id.dialog_single);
halfCustom = (Button) findViewById(R.id.dialog_half_custom);
custom = (Button) findViewById(R.id.dialog_custom);
item = (Button) findViewById(R.id.dialog_item);
multi = (Button) findViewById(R.id.dialog_multi);
circleProgress = (Button) findViewById(R.id.dialog_progress);
lineProgress = (Button) findViewById(R.id.dialog_progress_line);
bottomSheet = (Button) findViewById(R.id.dialog_bottom);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.dialog_normal:
NormalDialogTwo();
break;
case R.id.dialog_item:
itemDialog();
break;
case R.id.dialog_single:
singleDialog();
break;
case R.id.dialog_multi:
multiDialog();
break;
case R.id.dialog_half_custom:
halfCustomDialog();
break;
case R.id.dialog_custom:
// customDialog();
customBottomDialog();
break;
case R.id.dialog_progress:
circleProgressDialog();
break;
case R.id.dialog_progress_line:
lineProgressDialog();
break;
case R.id.dialog_bottom:
bottomSheetDialog();
break;
}
}
/**
* 普通对话框
* 两个按钮
*/
private void NormalDialog() {
AlertDialog dialog = new AlertDialog.Builder(this)
.setIcon(R.mipmap.icon)//设置标题的图片
.setTitle("我是对话框")//设置对话框的标题
.setMessage("我是对话框的内容")//设置对话框的内容
//设置对话框的按钮,NegativeButton这个按钮是在对话框的左边,PositiveButton实在对话框的右边
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "点击了取消按钮", Toast.LENGTH_SHORT).show();
dialog.dismiss();
}
})
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "点击了确定的按钮", Toast.LENGTH_SHORT).show();
dialog.dismiss();
}
}).create();
dialog.show();
}
/**
* 普通对话框
* 三个按钮
*/
private void NormalDialogTwo() {
AlertDialog dialog = new AlertDialog.Builder(this)
.setIcon(R.mipmap.icon)//设置标题的图片
.setTitle("普通对话框")//设置对话框的标题
.setMessage("我是对话框的内容")//设置对话框的内容
//设置对话框的按钮
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
})
.setNeutralButton("第三个按钮", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "点击了第三个按钮", Toast.LENGTH_SHORT).show();
dialog.dismiss();
}
})
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).create();
dialog.show();
}
/**
* 列表对话框
*/
private void itemDialog() {
final String items[] = {"我是Item一", "我是Item二", "我是Item三", "我是Item四"};
AlertDialog dialog = new AlertDialog.Builder(this)
.setIcon(R.mipmap.icon)//设置标题的图片
.setTitle("列表对话框")//设置对话框的标题
.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, items[which], Toast.LENGTH_SHORT).show();
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
})
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).create();
dialog.show();
}
/**
* 单选列表对话框
*/
private void singleDialog() {
final String items[] = {"我是Item一", "我是Item二", "我是Item三",
- 1
- 2
- 3
前往页