首页 > 移动平台 > 详细

Android 4 学习(21):对话框

时间:2014-01-17 00:33:43      阅读:411      评论:0      收藏:0      [点我收藏+]

对话框

创建Dialog的两种方式:

1. 使用Dialog类或其子类,包括DialogFragment

2. Activity中使用Dialog主题(theme

下面是使用Dialog类的一个例子:

 

bubuko.com,布布扣
// Create the new Dialog.
Dialog dialog = new Dialog(MyActivity.this);
// Set the title. dialog.setTitle(“Dialog Title”); // Inflate the layout. dialog.setContentView(R.layout.dialog_view); // Update the Dialog’s contents.
TextView text = (TextView)dialog.findViewById(R.id.dialog_text_view);
text.setText(“This is the text in my dialog”);
// Display the Dialog. dialog.show();
bubuko.com,布布扣

 

也可以使用Dialog的子类,例如常用的AlertDialog

 

bubuko.com,布布扣
Context context = MyActivity.this;
String title = “It is Pitch Black”;
String message = “You are likely to be eaten by a Grue.”;
String button1String = “Go Back”;
String button2String = “Move Forward”; AlertDialog.Builder ad = new AlertDialog.Builder(context);
ad.setTitle(title);ad.setMessage(message); ad.setPositiveButton(button1String,
new DialogInterface.OnClickListener() {   public void onClick(DialogInterface dialog, int arg1) {     eatenByGrue();   } }); ad.setNegativeButton(button2String, new DialogInterface.OnClickListener(){   public void onClick(DialogInterface dialog, int arg1) {     //do nothing   } });
bubuko.com,布布扣

 

还可以设置是否显示Cancel按钮:

 

bubuko.com,布布扣
ad.setCancelable(true); 
ad.setOnCancelListener(new DialogInterface.OnCancelListener() { 
  public void onCancel(DialogInterface dialog) { 
    eatenByGrue();   }
});
bubuko.com,布布扣

 

使用内置的Dialog

Android中提供了这些现成的Dialog供我们使用:

1. CharacterPickerDialog 

2. DatePickerDialog 

3. TimePickerDialog 

4. ProgressDialog 

使用Fragment

Android中几乎所有的可见部分都可以放到Fragment中,我认为Fragment相对于View的一大优点是可以控制自己的生命周期。

 

bubuko.com,布布扣
public class MyDialogFragment extends DialogFragment {
  private static String CURRENT_TIME = “CURRENT_TIME”; 
  public static MyDialogFragment newInstance(String currentTime) {
    // Create a new Fragment instance with the specified parameters.
    MyDialogFragment fragment = new MyDialogFragment();
    Bundle args = new Bundle();     args.putString(CURRENT_TIME, currentTime);     fragment.setArguments(args);     return fragment;   }
}
bubuko.com,布布扣

Android 4 学习(21):对话框

原文:http://www.cnblogs.com/jubincn/p/3522541.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!