基础Dialog对话框
2016-09-17 19:58
399 查看
private String name,pwd;
private EditText etname,etpwd;
private TextView tv;
private int pop=0;
private String dataBooks;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv=(TextView) findViewById(R.id.tv);
}
public void myClick(View v){
switch (v.getId()) {
case R.id.btn_alertDialog://普通对话框
//创建对象
AlertDialog.Builder dialog=new AlertDialog.Builder(MainActivity.this);
//设置图标
dialog.setIcon(R.drawable.ic_launcher);
//设置标题
dialog.setTitle("提示");
//设置提示信息
dialog.setMessage("是否退出");
//设置取消按钮
dialog.setNegativeButton("取消",null);
//设置确定按钮
dialog.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,"您选择了确定", 0).show();
}
});
dialog.show();
break;
case R.id.btn_progressDialog://带进度条的对话框
//获取对象
ProgressDialog progressDialog=new ProgressDialog(this);
//构建信息
progressDialog.setTitle("正在下载");
progressDialog.setIcon(R.drawable.ic_launcher);
progressDialog.setMessage("正在下载请稍后");
//设置进度条类型
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.show();
break;
case R.id.btn_DateDialog://日期对话框
//获取系统日历
Calendar calendar=Calendar.getInstance();
int year=calendar.get(Calendar.
4000
YEAR);
int month=calendar.get(Calendar.MONTH);
int day=calendar.get(Calendar.DAY_OF_MONTH);
/**
* 参数
* context, 上下文
* callBack, 对监听回调
* year, 默认展示年
* monthOfYear, 默认展示月
* dayOfMonth 默认展示日
*/
DatePickerDialog datePickerDialog=new DatePickerDialog(
MainActivity.this,
new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
//展示日期比实际日期少1个月,因为系统日期是从0月开始,所以展示时月加一
Toast.makeText(MainActivity.this, year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日", 0).show();
}
},
year,
month,
day);
//展示
datePickerDialog.show();
break;
case R.id.btn_TimeDialog://时间对话框
//获取系统时间
Calendar calendar2=Calendar.getInstance();
int hour=calendar2.get(Calendar.HOUR_OF_DAY);
int minute=calendar2.get(Calendar.MINUTE);
/**
* 参数
* context 上下文
*
* callBack 监听回调
* hourOfDay 小时
* minute 分钟
* is24HourView 对否是24小时制
*/
TimePickerDialog timePickerDialog=new TimePickerDialog(
MainActivity.this,
new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,hourOfDay+"时"+minute+"分", 0).show();
}
},
hour,
minute,
true);
timePickerDialog.show();
break;
case R.id.btn_ziDialog://自定义对话框
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("用户登录");
//建立view
View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.item,null);
etname=(EditText) view.findViewById(R.id.et_name);
etpwd=(EditText) view.findViewById(R.id.et_pwd);
//绑定视图
builder.setView(view);
builder.setNegativeButton("取消",null);
builder.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
name=etname.getText().toString().trim();
pwd=etpwd.getText().toString().trim();
Toast.makeText(MainActivity.this, "用户名:"+name+"密码:"+pwd, 0).show();
}
});
builder.show();
break;
case R.id.btn_commonDialog://普通列表对话框
AlertDialog.Builder builder2=new AlertDialog.Builder(this);
builder2.setIcon(R.drawable.ic_launcher);
builder2.setTitle("选择书籍");
final String[] data=getResources().getStringArray(R.array.books);
builder2.setItems(data,new OnClickListener() {
@Override
//参数1:选择当前控件参数2:选择哪一项
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
tv.setText(data[which]);
}
});
builder2.show();
break;
case R.id.btn_danDialog://单选对话框
AlertDialog.Builder builder3=new AlertDialog.Builder(this);
builder3.setIcon(R.drawable.ic_launcher);
builder3.setTitle("选择书籍");
final String[] datas=getResources().getStringArray(R.array.books);
//参数1:数据源 参数2:默认选择项 参数3:监听选项
builder3.setSingleChoiceItems(datas, -1, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
pop=which;
}
});
builder3.setNegativeButton("取消", null);
builder3.setPositiveButton("确定",new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, datas[pop], 0).show();
}
} );
builder3.show();
break;
case R.id.btn_DuoDialog://多选对话框
AlertDialog.Builder builder4=new AlertDialog.Builder(this);
builder4.setIcon(R.drawable.ic_launcher);
builder4.setTitle("选择书籍");
final String[] d=getResources().getStringArray(R.array.books);
boolean[] isflag=new boolean[d.length];
builder4.setMultiChoiceItems(d, isflag, new OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
// TODO Auto-generated method stub
if(isChecked){
dataBooks+=d[which];
}
}
});
builder4.setNegativeButton("取消", null);
builder4.setPositiveButton("确定",new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
tv.setText(dataBooks);
}
});
builder4.show();
break;
default:
break;
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
private EditText etname,etpwd;
private TextView tv;
private int pop=0;
private String dataBooks;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv=(TextView) findViewById(R.id.tv);
}
public void myClick(View v){
switch (v.getId()) {
case R.id.btn_alertDialog://普通对话框
//创建对象
AlertDialog.Builder dialog=new AlertDialog.Builder(MainActivity.this);
//设置图标
dialog.setIcon(R.drawable.ic_launcher);
//设置标题
dialog.setTitle("提示");
//设置提示信息
dialog.setMessage("是否退出");
//设置取消按钮
dialog.setNegativeButton("取消",null);
//设置确定按钮
dialog.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,"您选择了确定", 0).show();
}
});
dialog.show();
break;
case R.id.btn_progressDialog://带进度条的对话框
//获取对象
ProgressDialog progressDialog=new ProgressDialog(this);
//构建信息
progressDialog.setTitle("正在下载");
progressDialog.setIcon(R.drawable.ic_launcher);
progressDialog.setMessage("正在下载请稍后");
//设置进度条类型
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.show();
break;
case R.id.btn_DateDialog://日期对话框
//获取系统日历
Calendar calendar=Calendar.getInstance();
int year=calendar.get(Calendar.
4000
YEAR);
int month=calendar.get(Calendar.MONTH);
int day=calendar.get(Calendar.DAY_OF_MONTH);
/**
* 参数
* context, 上下文
* callBack, 对监听回调
* year, 默认展示年
* monthOfYear, 默认展示月
* dayOfMonth 默认展示日
*/
DatePickerDialog datePickerDialog=new DatePickerDialog(
MainActivity.this,
new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
//展示日期比实际日期少1个月,因为系统日期是从0月开始,所以展示时月加一
Toast.makeText(MainActivity.this, year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日", 0).show();
}
},
year,
month,
day);
//展示
datePickerDialog.show();
break;
case R.id.btn_TimeDialog://时间对话框
//获取系统时间
Calendar calendar2=Calendar.getInstance();
int hour=calendar2.get(Calendar.HOUR_OF_DAY);
int minute=calendar2.get(Calendar.MINUTE);
/**
* 参数
* context 上下文
*
* callBack 监听回调
* hourOfDay 小时
* minute 分钟
* is24HourView 对否是24小时制
*/
TimePickerDialog timePickerDialog=new TimePickerDialog(
MainActivity.this,
new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,hourOfDay+"时"+minute+"分", 0).show();
}
},
hour,
minute,
true);
timePickerDialog.show();
break;
case R.id.btn_ziDialog://自定义对话框
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("用户登录");
//建立view
View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.item,null);
etname=(EditText) view.findViewById(R.id.et_name);
etpwd=(EditText) view.findViewById(R.id.et_pwd);
//绑定视图
builder.setView(view);
builder.setNegativeButton("取消",null);
builder.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
name=etname.getText().toString().trim();
pwd=etpwd.getText().toString().trim();
Toast.makeText(MainActivity.this, "用户名:"+name+"密码:"+pwd, 0).show();
}
});
builder.show();
break;
case R.id.btn_commonDialog://普通列表对话框
AlertDialog.Builder builder2=new AlertDialog.Builder(this);
builder2.setIcon(R.drawable.ic_launcher);
builder2.setTitle("选择书籍");
final String[] data=getResources().getStringArray(R.array.books);
builder2.setItems(data,new OnClickListener() {
@Override
//参数1:选择当前控件参数2:选择哪一项
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
tv.setText(data[which]);
}
});
builder2.show();
break;
case R.id.btn_danDialog://单选对话框
AlertDialog.Builder builder3=new AlertDialog.Builder(this);
builder3.setIcon(R.drawable.ic_launcher);
builder3.setTitle("选择书籍");
final String[] datas=getResources().getStringArray(R.array.books);
//参数1:数据源 参数2:默认选择项 参数3:监听选项
builder3.setSingleChoiceItems(datas, -1, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
pop=which;
}
});
builder3.setNegativeButton("取消", null);
builder3.setPositiveButton("确定",new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, datas[pop], 0).show();
}
} );
builder3.show();
break;
case R.id.btn_DuoDialog://多选对话框
AlertDialog.Builder builder4=new AlertDialog.Builder(this);
builder4.setIcon(R.drawable.ic_launcher);
builder4.setTitle("选择书籍");
final String[] d=getResources().getStringArray(R.array.books);
boolean[] isflag=new boolean[d.length];
builder4.setMultiChoiceItems(d, isflag, new OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
// TODO Auto-generated method stub
if(isChecked){
dataBooks+=d[which];
}
}
});
builder4.setNegativeButton("取消", null);
builder4.setPositiveButton("确定",new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
tv.setText(dataBooks);
}
});
builder4.show();
break;
default:
break;
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
相关文章推荐
- hdu1824 Let's go home--2-sat
- STL之--插入迭代器(back_inserter,inserter,front_inserter的区别)
- ORACLE中ESCAPE关键字用法
- CCF 201604-2 俄罗斯方块
- DbUtils分析
- C# BeginInvoke
- 归并排序与分治法求逆序对数
- 第三周项目3-求集合并集
- cache和buffer介绍
- open GL 、DirectX、open CV、 open Inventor 、cocos2dx、unity3d、3dmax辨析
- 九度1088
- hdu2022 海选女主角
- 易经64卦记忆
- ncurses--读书笔记2
- 第三周项目3-求集合并集
- 单向循环队列
- mysql下如何查看表
- php面向对象-构造方法
- 4.自己动手写Java Web框架-MVC++
- 第三十章 elk(1) - 第一种架构(最简架构)