EditTextActivityDialog.java revision 9066cfe9886ac131c34d59ed0e2d287b0e3c0087
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage com.android.imftest.samples;
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.android.imftest.R;
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.app.Activity;
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.app.AlertDialog;
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.app.Dialog;
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Bundle;
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.LayoutInflater;
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.View;
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.ViewGroup;
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.widget.Button;
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.widget.EditText;
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.widget.LinearLayout;
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.widget.ScrollView;
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class EditTextActivityDialog extends Activity {
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private static final int SCROLLABLE_DIALOG_ID = 0;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private static final int NONSCROLLABLE_DIALOG_ID = 1;
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private LinearLayout mLayout;
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private ScrollView mScrollView;
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private LayoutInflater mInflater;
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private Button mButton1;
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private Button mButton2;
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    protected void onCreate(Bundle icicle) {
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        super.onCreate(icicle);
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mLayout = new LinearLayout(this);
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mLayout.setOrientation(LinearLayout.VERTICAL);
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mLayout.setLayoutParams(new ViewGroup.LayoutParams(
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                ViewGroup.LayoutParams.FILL_PARENT,
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                ViewGroup.LayoutParams.FILL_PARENT));
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton1 = new Button(this);
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton1.setText(R.string.open_dialog_scrollable);
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton1.setOnClickListener(new View.OnClickListener() {
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            public void onClick(View v) {
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                showDialog(SCROLLABLE_DIALOG_ID);
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            }
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        });
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton2 = new Button(this);
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton2.setText(R.string.open_dialog_nonscrollable);
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mButton2.setOnClickListener(new View.OnClickListener() {
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            public void onClick(View v) {
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                showDialog(NONSCROLLABLE_DIALOG_ID);
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            }
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        });
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mLayout.addView(mButton1);
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mLayout.addView(mButton2);
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        setContentView(mLayout);
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    protected Dialog onCreateDialog(int id) {
639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        switch (id) {
649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            case SCROLLABLE_DIALOG_ID:
659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                return createDialog(true);
669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            case NONSCROLLABLE_DIALOG_ID:
679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                return createDialog(false);
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return super.onCreateDialog(id);
719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    protected Dialog createDialog(boolean scrollable) {
749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        View layout;
759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        EditText editText;
769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        if (scrollable) {
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            layout = new ScrollView(EditTextActivityDialog.this);
799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            ((ScrollView) layout).setMinimumHeight(mLayout.getHeight());
809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            ((ScrollView) layout).addView((
829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                    LinearLayout) View.inflate(EditTextActivityDialog.this,
839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                    R.layout.dialog_edit_text_no_scroll, null));
849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        } else {
859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            layout = View.inflate(EditTextActivityDialog.this,
869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                    R.layout.dialog_edit_text_no_scroll, null);
879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        Dialog d = new Dialog(EditTextActivityDialog.this);
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        d.setTitle(getString(R.string.test_dialog));
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        d.setCancelable(true);
929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        d.setContentView(layout);
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return d;
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
97