ダイアログの中のEditTextの値の取得方法

2,336 views
Skip to first unread message

ロイド

unread,
Jun 24, 2009, 6:37:26 AM6/24/09
to 日本Androidの会
はじめまして 先ほど入会させていただきました。ロイドと申します。

先日よりAndroidの勉強を始めたのですが、中々情報が少なく困っております。


今ユーザー認証画面を作っており、ダイアログの中にEditTextを作り属性をpasswordにして
入力したダイアログ表示元のActivityで受け取るようにしたいのですが、なかなかうまくいきません。


パスワードダイアログの書き方はApiDemoのText Entry Dialogをまねて以下のようにしております。
しかし、なぜかsetPositiveButtonのonClick内のfindViewByIdでnullが返って来ており
EditText のインスタンスが取得できません。

ダイアログのEditText から値を取得する良い方法などご存知の方いらっしゃいましたら
ご教授をお願いします。


final View textEntryView = factory.inflate
(R.layout.input_password, null);
/*ダイアログビルダーを生成*/
AlertDialog.Builder dlg =new AlertDialog.Builder
(this);
/*ダイアログにメッセージを登録*/
dlg .setMessage("パスワードを入力してください。");
dlg .setView(textEntryView);
EditText etext = (EditText)findViewById
(R.id.password);
/*ダイアログのOKボタンが押下された時の処理を登録*/
dlg .setPositiveButton("OK", new
DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,int
whichButton) {
           EditText text =(EditText )findViewById(R.id.password);
           text.gettext();
}
});
dlg2.create();
dlg2.show();

Keiji Ariyama

unread,
Jun 24, 2009, 7:50:32 AM6/24/09
to android-g...@googlegroups.com
有山@大阪です。

出先ですので、あれですが。

textEntryView.findViewById

で、EditTextのインスタンスとってみては。

Keiji

On 2009/06/24, at 19:37, ロイド <andro...@gmail.com> wrote:

>
> はじめまして 先ほど入会させていただきました。ロイドと申します。
>
> 先日よりAndroidの勉強を始めたのですが、中々情報が少なく
> 困っております。
>
>
> 今ユーザー認証画面を作っており、ダイアログの中にEditTextを
> 作り属性をpasswordにして
> 入力したダイアログ表示元のActivityで受け取るようにしたいの
> ですが、なかなかうまくいきません。
>
>
> パスワードダイアログの書き方はApiDemoのText Entry Dialog
> をまねて以下のようにしております。
> しかし、なぜかsetPositiveButtonのonClick内の
> findViewByIdでnullが返って来ており
> EditText のインスタンスが取得できません。
>
> ダイアログのEditText から値を取得する良い方法などご存知の

ロイド

unread,
Jun 24, 2009, 8:22:11 AM6/24/09
to 日本Androidの会
TO)有山さん
こんばんは ロイドです。

自分でnewしたViewにレイアウトを入れておきながら
それを使わずにfindViewByIdしてたので
インスタンスがnullだったんですね・・・

ご教授いただいた内容で、確かにインスタンスが取得でき
Edittextの内容をgetTextで取ることができました。

ありがとうございました。


On 6月24日, 午後8:50, Keiji Ariyama <keiji_ariy...@c-lis.co.jp> wrote:
> 有山@大阪です。
>
> 出先ですので、あれですが。
>
> textEntryView.findViewById
>
> で、EditTextのインスタンスとってみては。
>
> Keiji
>
> > dlg2.show();- 引用テキストを表示しない -
>
> - 引用テキストを表示 -
Reply all
Reply to author
Forward
0 new messages