android中的对话框之四:各种系统对话框的使用实例

发布时间:2016-12-7 1:51:09 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"android中的对话框之四:各种系统对话框的使用实例",主要涉及到android中的对话框之四:各种系统对话框的使用实例方面的内容,对于android中的对话框之四:各种系统对话框的使用实例感兴趣的同学可以参考一下。

http://blog.csdn.net/lamp_zy/article/details/7703908 1、新建工程:DialogTest 2、编写布局文件:    (1)、main.xml   代码如下: View Code 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" 4 android:layout_width="fill_parent" 5 android:layout_height="fill_parent" 6 > 7 <TextView 8 android:layout_width="fill_parent" 9 android:layout_height="wrap_content"10 android:text="@string/hello"11 />12 <Button13 android:id="@+id/button01"14 android:layout_width="fill_parent"15 android:layout_height="wrap_content"16 android:text="@string/button01"17 />18 <Button19 android:id="@+id/button02"20 android:layout_width="fill_parent"21 android:layout_height="wrap_content"22 android:text="@string/button02"23 />24 <Button25 android:id="@+id/button03"26 android:layout_width="fill_parent"27 android:layout_height="wrap_content"28 android:text="@string/button03"29 />30 <Button31 android:id="@+id/button04"32 android:layout_width="fill_parent"33 android:layout_height="wrap_content"34 android:text="@string/button04"35 />36 </LinearLayout>37 38 (2)alert_dialog_text_entry.xml 此部分布局是实现可以用户交互的。39 40 <?xml version="1.0" encoding="utf-8"?>41 <LinearLayout42 xmlns:android="http://schemas.android.com/apk/res/android"43 android:orientation="vertical"44 android:layout_width="fill_parent"45 android:layout_height="fill_parent">46 47 <TextView48 android:id="@+id/username_view"49 android:layout_width="wrap_content"50 android:layout_height="wrap_content"51 android:layout_marginLeft="20dip"52 android:layout_marginRight="20dip"53 android:text="用户名"54 android:textAppearance="@android:style/TextAppearance.Medium"55 />56 <EditText57 android:id="@+id/username_edit"58 android:layout_width="fill_parent"59 android:layout_height="wrap_content"60 android:layout_marginLeft="20dip"61 android:layout_marginRight="20dip"62 android:capitalize="none"63 android:textAppearance="@android:style/TextAppearance.Medium"64 />65 <TextView66 android:id="@+id/password_view"67 android:layout_width="wrap_content"68 android:layout_height="wrap_content"69 android:layout_marginLeft="20dip"70 android:layout_marginRight="20dip"71 android:text="密码"72 android:textAppearance="@android:style/TextAppearance.Medium"73 />74 <EditText75 android:id="@+id/password_edit"76 android:layout_width="fill_parent"77 android:layout_height="wrap_content"78 android:layout_marginLeft="20dip"79 android:layout_marginRight="20dip"80 android:capitalize="none"81 android:password="true"82 android:textAppearance="@android:style/TextAppearance.Medium" 83 />84 </LinearLayout> 3、编写资源文件:strings.xml View Code 1 <?xml version="1.0" encoding="utf-8"?> 2 <resources> 3 <string name="hello">对话框</string> 4 <string name="app_name">Android Dialog</string> 5 <string name="button01">两个button的对话框</string> 6 <string name="button02">三个button的对话框</string> 7 <string name="button03">可以进行输入的对话框</string> 8 <string name="button04">进度框</string> 9 <string name="alert_dialog_two_buttons_title">这是一个提示框,点击取消后可以返回。</string>10 <string name="alert_dialog_ok">确定</string>11 <string name="alert_dialog_cancle">取消</string>12 <string name="alert_dialog_three_buttons_title">标题部分</string>13 <string name="alert_dialog_three_buttons_msg">对于程序员或创业团队来说,还是有必要拥有一个属于自己的博客。14 Wordpress 曾经让个人或企业搭建博客变得非常容易。但是我们觉得 Wordpress15 还是有些重量级,所以选择了一个非常轻便的工具 toto,一段只有200多行代码的Ruby应用程序。</string>16 <string name="alert_dialog_something">进入详细</string>17 <string name="alert_diaog_text_entry">请输入</string>18 </resources> 4、开发主逻辑代码:DialogTest.java View Code 1 package com.dialogTest; 2 3 import com.listeview.R; 4 5 import android.app.Activity; 6 import android.app.AlertDialog; 7 import android.app.DatePickerDialog; 8 import android.app.Dialog; 9 import android.app.ProgressDialog; 10 import android.app.TimePickerDialog; 11 import android.app.AlertDialog.Builder; 12 import android.content.Context; 13 import android.content.DialogInterface; 14 import android.os.Bundle; 15 import android.text.method.CharacterPickerDialog; 16 import android.view.LayoutInflater; 17 import android.view.View; 18 import android.view.View.OnClickListener; 19 import android.widget.Button; 20 21 public class DialogTest extends Activity { 22 private static final int dialog4 = 4; 23 private static final int dialog3 = 3; 24 private static final int dialog2 = 2; 25 private static final int dialog1 = 1; 26 /** Called when the activity is first created. */ 27 private Button button01; 28 private Button button02; 29 private Button button03; 30 private Button button04; 31 32 @Override 33 public void onCreate(Bundle savedInstanceState) { 34 super.onCreate(savedInstanceState); 35 setContentView(R.layout.main); 36 37 button01=(Button)findViewById(R.id.button01); 38 button02=(Button)findViewById(R.id.button02); 39 button03=(Button)findViewById(R.id.button03); 40 button04=(Button)findViewById(R.id.button04); 41 42 button01.setOnClickListener(new OnClickListener() { 43 @Override 44 public void onClick(View v) { 45 showDialog(dialog1); 46 } 47 }); 48 49 button02.setOnClickListener(new OnClickListener() { 50 @Override 51 public void onClick(View v) { 52 // TODO Auto-generated method stub 53 showDialog(dialog2); 54 } 55 }); 56 57 button03.setOnClickListener(new OnClickListener() { 58 @Override 59 public void onClick(View v) { 60 // TODO Auto-generated method stub 61 showDialog(dialog3); 62 } 63 }); 64 65 button04.setOnClickListener(new OnClickListener() { 66 @Override 67 public void onClick(View v) { 68 // TODO Auto-generated method stub 69 showDialog(dialog4); 70 } 71 }); 72 73 } 74 @Override 75 protected Dialog onCreateDialog(int id) { 76 // TODO Auto-generated method stub 77 switch(id){ 78 case dialog1: 79 return buildDialog1(DialogTest.this); 80 case dialog2: 81 return buildDialog2(DialogTest.this); 82 case dialog3: 83 return buildDialog3(DialogTest.this); 84 case dialog4: 85 return buildDialog4(DialogTest.this); 86 } 87 return null; 88 } 89 private Dialog buildDialog4(Context context) { 90 ProgressDialog dialog=new ProgressDialog(context); 91 dialog.setTitle("正在下载歌曲"); 92 dialog.setMessage("请稍候......"); 93 94 /*TimePickerDialog dialog=new TimePickerDialog(context, 0, null, 0, 0, false); 95 dialog.setTitle("时钟");*/ 96 97 /*DatePickerDialog dialog=new DatePickerDialog(context, 0, null, 0, 0, 0); 98 dialog.setTitle("日期");*/ 99 100 return dialog;101 }102 private Dialog buildDialog3(Context context) {103 LayoutInflater inflater=LayoutInflater.from(this);104 final View textEntryView=inflater.inflate(R.layout.alert_dialog_text_entry, null);105 106 AlertDialog.Builder builder=new AlertDialog.Builder(context);107 builder.setTitle(R.string.alert_diaog_text_entry);108 109 builder.setView(textEntryView); //关键110 builder.setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {111 112 @Override113 public void onClick(DialogInterface dialog, int which) {114 // TODO Auto-generated method stub115 setTitle("单击对话框上的确定按钮");116 }117 });118 builder.setNegativeButton(R.string.alert_dialog_cancle,new DialogInterface.OnClickListener() {119 120 @Override121 public void onClick(DialogInterface dialog, int which) {122 // TODO Auto-generated method stub123 setTitle("单击了对话框上的取消按钮");124 }125 });126 return builder.create();127 }128 129 130 private Dialog buildDialog2(Context context) {131 AlertDialog.Builder builder=new AlertDialog.Builder(context);132 builder.setTitle(R.string.alert_dialog_three_buttons_title);133 builder.setMessage(R.string.alert_dialog_three_buttons_msg);134 builder.setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {135 @Override136 public void onClick(DialogInterface dialog, int which) {137 // TODO Auto-generated method stub138 setTitle("单击对话框上的确定按钮");139 }140 });141 builder.setNeutralButton(R.string.alert_dialog_something, new DialogInterface.OnClickListener() {142 @Override143 public void onClick(DialogInterface dialog, int which) {144 // TODO Auto-generated method stub145 setTitle("点击了对话框上的进入详细按钮");146 }147 });148 builder.setNegativeButton(R.string.alert_dialog_cancle, new DialogInterface.OnClickListener() {149 150 @Override151 public void onClick(DialogInterface dialog, int which) {152 // TODO Auto-generated method stub153 setTitle("单击了对话框上的取消按钮");154 }155 });156 return builder.create();157 }158 159 private Dialog buildDialog1(Context context) {160 // TODO Auto-generated method stub161 AlertDialog.Builder builder=new AlertDialog.Builder(context);162 //builder.setIcon(R.drawable.icon);163 builder.setTitle(R.string.alert_dialog_two_buttons_title);164 builder.setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {165 @Override166 public void onClick(DialogInterface dialog, int which) {167 // TODO Auto-generated method stub168 setTitle("单击对话框上的确定按钮");169 }170 });171 builder.setNegativeButton(R.string.alert_dialog_cancle, new DialogInterface.OnClickListener() {172 @Override173 public void onClick(DialogInterface dialog, int which) {174 // TODO Auto-generated method stub175 setTitle("单击了对话框上的取消按钮");176 }177 });178 return builder.create();179 }180 } 5、运行效果显示:    主程序:        Dialog1:       Dialog2:     Dialog3: Dialog4:

上一篇:Spring dataSource配置
下一篇:通向架构师的道路(第八天)之weblogic与apache的整合与调优

相关文章

相关评论