android中的对话框之四:各种系统对话框的使用实例
2013-09-01 22:10
411 查看
http://blog.csdn.net/lamp_zy/article/details/7703908
1、新建工程:DialogTest
2、编写布局文件:
(1)、main.xml 代码如下:
View
Code
3、编写资源文件:strings.xml
View
Code
4、开发主逻辑代码:DialogTest.java
View
Code
5、运行效果显示:
主程序:
Dialog1:
Dialog2:
Dialog3:
Dialog4:
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 <Button 13 android:id="@+id/button01" 14 android:layout_width="fill_parent" 15 android:layout_height="wrap_content" 16 android:text="@string/button01" 17 /> 18 <Button 19 android:id="@+id/button02" 20 android:layout_width="fill_parent" 21 android:layout_height="wrap_content" 22 android:text="@string/button02" 23 /> 24 <Button 25 android:id="@+id/button03" 26 android:layout_width="fill_parent" 27 android:layout_height="wrap_content" 28 android:text="@string/button03" 29 /> 30 <Button 31 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 <LinearLayout 42 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 <TextView 48 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 <EditText 57 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 <TextView 66 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 <EditText 75 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 曾经让个人或企业搭建博客变得非常容易。但是我们觉得 Wordpress 15 还是有些重量级,所以选择了一个非常轻便的工具 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 @Override 113 public void onClick(DialogInterface dialog, int which) { 114 // TODO Auto-generated method stub 115 setTitle("单击对话框上的确定按钮"); 116 } 117 }); 118 builder.setNegativeButton(R.string.alert_dialog_cancle,new DialogInterface.OnClickListener() { 119 120 @Override 121 public void onClick(DialogInterface dialog, int which) { 122 // TODO Auto-generated method stub 123 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 @Override 136 public void onClick(DialogInterface dialog, int which) { 137 // TODO Auto-generated method stub 138 setTitle("单击对话框上的确定按钮"); 139 } 140 }); 141 builder.setNeutralButton(R.string.alert_dialog_something, new DialogInterface.OnClickListener() { 142 @Override 143 public void onClick(DialogInterface dialog, int which) { 144 // TODO Auto-generated method stub 145 setTitle("点击了对话框上的进入详细按钮"); 146 } 147 }); 148 builder.setNegativeButton(R.string.alert_dialog_cancle, new DialogInterface.OnClickListener() { 149 150 @Override 151 public void onClick(DialogInterface dialog, int which) { 152 // TODO Auto-generated method stub 153 setTitle("单击了对话框上的取消按钮"); 154 } 155 }); 156 return builder.create(); 157 } 158 159 private Dialog buildDialog1(Context context) { 160 // TODO Auto-generated method stub 161 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 @Override 166 public void onClick(DialogInterface dialog, int which) { 167 // TODO Auto-generated method stub 168 setTitle("单击对话框上的确定按钮"); 169 } 170 }); 171 builder.setNegativeButton(R.string.alert_dialog_cancle, new DialogInterface.OnClickListener() { 172 @Override 173 public void onClick(DialogInterface dialog, int which) { 174 // TODO Auto-generated method stub 175 setTitle("单击了对话框上的取消按钮"); 176 } 177 }); 178 return builder.create(); 179 } 180 }
5、运行效果显示:
主程序:
Dialog1:
Dialog2:
Dialog3:
Dialog4:
相关文章推荐
- android中的对话框之四:各种系统对话框的使用实例
- android中的对话框之二:各种系统对话框的使用实例
- android 系统提示对话框(AlertDialog)的使用
- Android系统搜索对话框(浮动搜索框)的使用 (转)
- Android 系统当中各种尺寸单位的定义及使用
- 【Android】Android中AlertDialog对话框的使用实例
- Android系统搜索对话框(浮动搜索框)的使用
- Android系统搜索对话框(浮动搜索框)的使用
- Android 系统当中各种尺寸单位的定义及使用
- Android实例-如何使用系统剪切板(XE8+小米2)
- Android中AlertDialog各种对话框的用法实例详解
- 【Android基础知识】各种对话框的使用
- Android系统搜索对话框(浮动搜索框)的使用
- android 系统提示对话框(AlertDialog)的使用
- Android App中各种数据保存方式的使用实例总结
- 【Android】webView 使用 系统自带搜索对话框问题
- android 系统提示对话框(AlertDialog)的使用
- Android 通过系统使用NotificationListenerService 监听各种Notification的使用方法
- Android系统搜索对话框(浮动搜索框)的使用