質問

おそらく、私はここで何かを明らかに不足しているんだけど、私はAlertDialogのボディのためのカスタムビューを設定することに苦労しています。ここで私は、カスタムビューを設定するためにやっているものです。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.setContentView(View.inflate(getContext(), R.layout.dialog_body, null));
}

の代わりにAlertDialogの本体の内容を設定する、ビューが画面全体に配置されます。どのように私はちょうどAlertDialogメッセージ本体を交換するためにビューを得るのですか?

役に立ちましたか?

解決

あなたはそれが画面全体を占める理由ですsetContentViewを呼び出すことによって、アクティビティのビューを設定しています。あなたはまた、私は活動であると仮定し何のonCreate方法でそれをやっている、あなたはonCreateDialog方法でそれを行う必要があります。

ドキュメントと例と相続人リンクます。

public Dialog onCreateDialog(int id) {

            Dialog dialog = null;
            AlertDialog.Builder builder = new AlertDialog.Builder(app);
            AlertDialog alert = null;

            builder.setTitle("A title") 
                   .setCancelable(true)
                   .setView(myView);
                alert = builder.create();
                return alert;

}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top