DialogFragment 的使用

 1 package com.whj.ntwb;
 2 
 3 import android.annotation.SuppressLint;
 4 import android.app.Activity;
 5 import android.app.AlertDialog;
 6 import android.app.Dialog;
 7 import android.app.DialogFragment;
 8 import android.content.DialogInterface;
 9 import android.os.Bundle;
10 import android.util.Log;
11 import android.view.View;
12 import android.view.View.OnClickListener;
13 import android.widget.Button;
14 import android.widget.TextView;
15 
16 @SuppressLint("NewApi") public class MainActivity extends Activity{
17     @Override
18     protected void onCreate(Bundle savedInstanceState) {
19         // TODO Auto-generated method stub
20         super.onCreate(savedInstanceState);
21         setContentView(R.layout.layout_linearlayout);
22          View tv = findViewById(R.id.text);
23             ((TextView)tv).setText("Example of displaying an alert dialog with a DialogFragment");
24 
25             // Watch for button clicks.
26             Button button = (Button)findViewById(R.id.show);
27             button.setOnClickListener(new OnClickListener() {
28                 public void onClick(View v) {
29                     showDialog();
30                 }
31             });
32     }
33 
34     void showDialog() {
35         DialogFragment newFragment = MyAlertDialogFragment.newInstance(
36                 R.string.alert_dialog_two_buttons_title);
37         newFragment.show(getFragmentManager(), "dialog");
38     }
39 
40     public void doPositiveClick() {
41         // Do stuff here.
42         Log.i("FragmentAlertDialog", "Positive click!");
43     }
44     
45     public void doNegativeClick() {
46         // Do stuff here.
47         Log.i("FragmentAlertDialog", "Negative click!");
48     }
49 
50     
51 
52     public static class MyAlertDialogFragment extends DialogFragment {
53 
54         public static MyAlertDialogFragment newInstance(int title) {
55             MyAlertDialogFragment frag = new MyAlertDialogFragment();
56             Bundle args = new Bundle();
57             args.putInt("title", title);
58             frag.setArguments(args);
59             return frag;
60         }
61         
62         @Override
63         public Dialog onCreateDialog(Bundle savedInstanceState) {
64             int title = getArguments().getInt("title");
65             
66             return new AlertDialog.Builder(getActivity())
67                     .setIcon(R.drawable.ic_launcher)
68                     .setTitle(title)
69                     .setMessage("ddddddddddd")
70                     .setPositiveButton(R.string.alert_dialog_ok,
71                         new DialogInterface.OnClickListener() {
72                             public void onClick(DialogInterface dialog, int whichButton) {
73                                 ((MainActivity)getActivity()).doPositiveClick();
74                             }
75                         }
76                     )
77                     .setNegativeButton(R.string.alert_dialog_cancel,
78                         new DialogInterface.OnClickListener() {
79                             public void onClick(DialogInterface dialog, int whichButton) {
80                                 ((MainActivity)getActivity()).doNegativeClick();
81                             }
82                         }
83                     )
84                     .create();
85         }
86     }
87 }

 

posted @ 2015-04-14 15:43  人生途中的积累  阅读(404)  评论(0编辑  收藏  举报