EditTextActivityDialog.java revision 9066cfe9886ac131c34d59ed0e2d287b0e3c0087
1package com.android.imftest.samples;
2
3import com.android.imftest.R;
4
5import android.app.Activity;
6import android.app.AlertDialog;
7import android.app.Dialog;
8import android.os.Bundle;
9import android.view.LayoutInflater;
10import android.view.View;
11import android.view.ViewGroup;
12import android.widget.Button;
13import android.widget.EditText;
14import android.widget.LinearLayout;
15import android.widget.ScrollView;
16
17public class EditTextActivityDialog extends Activity {
18
19    private static final int SCROLLABLE_DIALOG_ID = 0;
20    private static final int NONSCROLLABLE_DIALOG_ID = 1;
21
22    private LinearLayout mLayout;
23    private ScrollView mScrollView;
24    private LayoutInflater mInflater;
25    private Button mButton1;
26    private Button mButton2;
27
28
29    @Override
30    protected void onCreate(Bundle icicle) {
31        super.onCreate(icicle);
32
33        mLayout = new LinearLayout(this);
34        mLayout.setOrientation(LinearLayout.VERTICAL);
35        mLayout.setLayoutParams(new ViewGroup.LayoutParams(
36                ViewGroup.LayoutParams.FILL_PARENT,
37                ViewGroup.LayoutParams.FILL_PARENT));
38
39        mButton1 = new Button(this);
40        mButton1.setText(R.string.open_dialog_scrollable);
41        mButton1.setOnClickListener(new View.OnClickListener() {
42            public void onClick(View v) {
43                showDialog(SCROLLABLE_DIALOG_ID);
44            }
45        });
46
47        mButton2 = new Button(this);
48        mButton2.setText(R.string.open_dialog_nonscrollable);
49        mButton2.setOnClickListener(new View.OnClickListener() {
50            public void onClick(View v) {
51                showDialog(NONSCROLLABLE_DIALOG_ID);
52            }
53        });
54
55        mLayout.addView(mButton1);
56        mLayout.addView(mButton2);
57
58        setContentView(mLayout);
59    }
60
61    @Override
62    protected Dialog onCreateDialog(int id) {
63        switch (id) {
64            case SCROLLABLE_DIALOG_ID:
65                return createDialog(true);
66            case NONSCROLLABLE_DIALOG_ID:
67                return createDialog(false);
68        }
69
70        return super.onCreateDialog(id);
71    }
72
73    protected Dialog createDialog(boolean scrollable) {
74        View layout;
75        EditText editText;
76
77        if (scrollable) {
78            layout = new ScrollView(EditTextActivityDialog.this);
79            ((ScrollView) layout).setMinimumHeight(mLayout.getHeight());
80
81            ((ScrollView) layout).addView((
82                    LinearLayout) View.inflate(EditTextActivityDialog.this,
83                    R.layout.dialog_edit_text_no_scroll, null));
84        } else {
85            layout = View.inflate(EditTextActivityDialog.this,
86                    R.layout.dialog_edit_text_no_scroll, null);
87        }
88
89        Dialog d = new Dialog(EditTextActivityDialog.this);
90        d.setTitle(getString(R.string.test_dialog));
91        d.setCancelable(true);
92        d.setContentView(layout);
93        return d;
94    }
95
96}
97