そこにいくつかのUI要素を含むダイアログがあります。このダイアログは作成され、後で を介して表示されshow()
ます。デフォルトのコンストラクターでダイアログを作成できますDialog(Context)
。しかし、私のコンテンツビューは、関数のonCreate
後に呼び出されるものにのみ設定されていshow()
ます。これにより、UI 要素を次のように変更しようとすると NPE が発生します。
public void showNumber(String number)
{
labelNumber.setText(number);
show();
}
ただし、上記の関数を以下のように変更すると、ほとんどの場合は機能します。setContentView
(実行時までに呼び出されないため、電話が遅くなると失敗することがありますsetText
)
public void showNumber(String number)
{
show();
labelNumber.setText(number);
}
ダイアログを作成し、まったく表示せずにコンテンツ ビューを設定するにはどうすればよいですか。手動で呼び出すと、最初のsetContentView()
呼び出し時に再度呼び出されます。show()