安卓中9种对话框
2015-09-16 21:37
357 查看
主布局文件:
适配器对话框用到的布局文件:
自定义对话框用到的布局文件:
主逻辑代码文件:
<span style="font-size:18px;"><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click1" android:text="普通对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click2" android:text="带按钮对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click3" android:text="带列表对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click4" android:text="适配器列表对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click5" android:text="单选列表对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click6" android:text="多选列表对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click7" android:text="自定义对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click8" android:text="日期对话框" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click9" android:text="时间对话框" /> </LinearLayout></span>
适配器对话框用到的布局文件:
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <TextView android:id="@+id/tv" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout> </span>
自定义对话框用到的布局文件:
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:text="用户名:" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <EditText android:id="@+id/tv1" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:text="密码:" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <EditText android:id="@+id/tv2" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout> </LinearLayout> </span>
主逻辑代码文件:
<span style="font-size:18px;">package com.example.day11_dialog; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.app.AlertDialog; import android.app.DatePickerDialog; import android.app.DatePickerDialog.OnDateSetListener; import android.app.TimePickerDialog; import android.app.TimePickerDialog.OnTimeSetListener; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.DialogInterface.OnMultiChoiceClickListener; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.DatePicker; import android.widget.EditText; import android.widget.SimpleAdapter; import android.widget.TimePicker; import android.widget.Toast; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void click1(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("普通对话框"); dialog.setIcon(R.drawable.ic_launcher); dialog.setMessage("这是普通对话框"); dialog.create(); dialog.show(); } public void click2(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); dialog.setMessage("这是带按钮对话框"); dialog.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "确定" + which, 0).show(); } }); dialog.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "取消" + which, 0).show(); } }); dialog.setNeutralButton("稍后", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "稍后" + which, 0).show(); } }); dialog.create(); dialog.show(); } public void click3(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); //dialog.setMessage("这是带列表对话框"); final String res[] = getResources().getStringArray(R.array.color); dialog.setItems(res, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), res[which], 0).show(); } }); dialog.create(); dialog.show(); } public void click4(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); //dialog.setMessage("这是适配器列表对话框"); final List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); for (int i = 0; i < 5; i++) { Map<String, Object> map = new HashMap<String, Object>(); map.put("img", R.drawable.ic_launcher); map.put("text", "item" + i); list.add(map); } SimpleAdapter adapter = new SimpleAdapter(getApplicationContext(), list, R.layout.adapter_style, new String[] { "img", "text" }, new int[] { R.id.iv, R.id.tv }); dialog.setAdapter(adapter, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), list.get(which).get("text").toString(), 0).show(); } }); dialog.create(); dialog.show(); } public void click5(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); //dialog.setMessage("这是带单选对话框"); dialog.setSingleChoiceItems(R.array.color, 0, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), which+"", 0).show(); } }); dialog.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }); dialog.create(); dialog.show(); } public void click6(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); //dialog.setMessage("这是带多选对话框"); dialog.setMultiChoiceItems(R.array.color, new boolean[] { true, false, false }, new OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { Toast.makeText(getApplicationContext(), which + " " + isChecked, 0).show(); } }); dialog.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }); dialog.create(); dialog.show(); } public void click7(View v) { AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("带按钮对话框"); //dialog.setMessage("这是自定义对话框"); View view = LayoutInflater.from(getApplicationContext()).inflate( R.layout.zidingyi_dialog, null); final EditText name = (EditText) view.findViewById(R.id.tv1); final EditText pwd = (EditText) view.findViewById(R.id.tv2); dialog.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "用户名:"+name.getText().toString().trim()+"\n密码:"+pwd.getText().toString().trim(), 1).show(); } }); dialog.setView(view); dialog.create(); dialog.show(); } public void click8(View v) { DatePickerDialog datadialog=new DatePickerDialog(MainActivity.this, new OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { Toast.makeText(MainActivity.this,year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"天" , 0).show(); } }, 2015, 8, 14); datadialog.show(); } public void click9(View v) { TimePickerDialog timedialog=new TimePickerDialog(MainActivity.this,new OnTimeSetListener() { @Override public void onTimeSet(TimePicker view, int hourOfDay, int minute) { Toast.makeText(MainActivity.this,hourOfDay+"小时"+minute+"分钟" , 0).show(); } },5,16, false); timedialog.show(); } } </span>
相关文章推荐
- Android自定义控件——自定义View绘制钟表
- hdu3768最大独立集
- Python+OpenCV学习(16)---视频流背景剔除
- shmget出现Invalid argument错误
- NSThread GCD
- 整数转字符与字符转整数的C系统函数
- JavaScript组成(三个组成部分)
- transform属性
- 查看进行AFNetworking请求时的头部信息
- CSS3动画
- 学习日志---树回归(回归树,模型树)
- TCP/IP连接服务器备忘
- android学习:两个Activity之间的数据传输
- wxpython初学者(四)之 事件驱动
- ubuntu14.04下ITK4.8,VTK6.2和Qt4整合笔记
- hdu 5024 Wang Xifeng's Little Plot(搜索)
- 《thinking&nbsp;in&nbsp;java》学习笔记16
- 《thinking&nbsp;in&nbsp;java》学习笔记14
- 《thinking&nbsp;in&nbsp;java》学习笔记15
- 《thinking&nbsp;in&nbsp;java》学习笔记18