fc2ブログ

2013
06/12

Android AlertDialog上のEditTextとかをfindViewByIdで取得するときはshow()以降

Android

AlertDialog上のEditTextに初期値を入れておきたかったんですけど、
途中で例外が発生して困っていましたが解決しました。

▼元のソース

private class OnButtonClickEvent implements OnClickListener {
@Override
public void onClick(View v) {
Dialog dialog = createPersonUpdateDialog();
dialogEditText = (EditText) dialog.findViewById(R.id.d_edittext);
dialogEditText.setText("文字列"); //ここでNullPointerException
dialog.show();
}
}

▼修正後のソース

private class OnButtonClickEvent implements OnClickListener {
@Override
public void onClick(View v) {
Dialog dialog = createPersonUpdateDialog();
dialog.show();
dialogEditText = (EditText) dialog.findViewById(R.id.d_edittext);
dialogEditText.setText("文字列");

}
}

Dialog#findViewByIdはshow()してからじゃないと使えないそうです。

情報元。
http://d.hatena.ne.jp/Kazzz/20100806/p1
ありがとうございます。
スポンサーサイト



CM

NAME
TITLE
MAIL
URL
PASS (削除時に必要)
SECRET 管理者にだけ表示を許可する
COMMENT&
DECORATION

TB

トラックバック

http://novdev.blog.fc2.com/tb.php/4-f3b78f0c

この記事にトラックバックする(FC2ブログユーザー)

プロフィール

nov

Author:nov
パセリはおやつです。

最新コメント

最新トラックバック

タグクラウドとサーチ

> tags

検索フォーム

ブロとも申請フォーム

QRコード
QR