Android基础------高级ul:消息对话框
前言:Android消息对话框提示笔记,刚刚接触Android
1.经典模式
//列表对话框 //经典模式 public void listdialog_01(View view){ final String[] items={"AAA","BBB","CCC","DDD"}; new AlertDialog.Builder(this) .setTitle("列表消息01") //图片 .setIcon(R.mipmap.qq) //设置选择项 .setItems(items, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { // i 是数组索引值 Toast.makeText(DraperyActivity.this,"你点的:"+items[i],Toast.LENGTH_SHORT).show(); } }) .show(); }
2.单选按钮模式
因为选择某个选项的时候,对话框并不会自己关闭,所以要加上个按钮,让对话框关闭
//列表对话框 //单选模式 public void listradiodialog_01(View view){ final String[] items={"AAA","BBB","CCC","DDD"}; new AlertDialog.Builder(this) .setTitle("单选列表消息") //图片 .setIcon(R.mipmap.qq) //设置单选按钮,默认选择索引为0的选项, .setSingleChoiceItems(items,0, null) //放置一个按钮, .setPositiveButton("确定", null) .show(); }
3.复选框模式
这里就让视图一打开就就创建好这个复选框,当我们点击按钮的时候就直接show出来
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_drawerlayout); createlistcheckboxdialog_01(); }
//先行创建好 public void createlistcheckboxdialog_01(){ final String[] items={"AAA","BBB","CCC","DDD"}; dia = new AlertDialog.Builder(this) .setTitle("复选列表消息") //图片 .setIcon(R.mipmap.qq) //设置复选按钮,默认选择第3个, .setMultiChoiceItems(items, new boolean[]{false, false, true, false}, new DialogInterface.OnMultiChoiceClickListener() { /** * * @param dialogInterface * @param i 点击项的索引 * @param b 是否被选中 */ @Override public void onClick(DialogInterface dialogInterface, int i, boolean b) { Toast.makeText(DraperyActivity.this,"你点击的是第"+(i+1)+"项:"+items[i]+b,Toast.LENGTH_SHORT).show(); } }) //放置一个按钮,用于关闭对话框 .setPositiveButton("确定", null) .create(); } //列表对话框 //复选框模式
//点击直接调用 public void listcheckboxdialog_01(View view){ dia.show(); }
4.时间选择框
TimepickerDialog用于选择时间,是系统封装好的
- 第一个参数接受一个context信息
- 第二个参数为当选择时间完成后执行的回调接口
- 第三个参数和第四个参数为初始化的时间
- 第四个参数选择true代表24小时制,false代表12小时制
TimePickerDialog dialog= new TimePickerDialog(Context context, OnTimeSetListener listener, int hourOfDay, int minute, boolean is24HourView)
demo:
private EditText workTime;
//时间对话框 public void test(View view){ //构建一个日历对象 Calendar cal=Calendar.getInstance();//当前日期 TimePickerDialog dialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker timePicker, int i, int i1) { String time=i+":"+i1; workTime.setText(time); } },cal.get(Calendar.HOUR)+1,cal.get(Calendar.MINUTE),true); dialog.show(); }
5.日期选择
DatePickerDialog用于选择日期,也是系统封装好的
- 第一个参数接受context信息
- 第二个参数为日期选择完成后的回掉接口
- 最后三个参数分别为初始化的年月日
DatePickerDialog dialcog=new DatePickerDialog(Context context, OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth)
private EditText intime;
//日期对话框 public void test_5(View view){ //构建一个日历对象 Calendar cal=Calendar.getInstance();//当前日期 //2个月后今天的日期 //cal.add(Calendar.MONTH,2); DatePickerDialog dialog=new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker datePicker, int i, int i1, int i2) { intime.setText(i+"-"+(i1+1)+"-"+i2); intime.setSelection(intime.getText().length()); } },cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DATE)); dialog.show(); }
------------------------------------------------