基础Dialog对话框

来源:互联网 发布:网络团队建设 编辑:程序博客网 时间:2024/06/05 04:13
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.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;
}


}
0 0
原创粉丝点击