3

次のコードを使用して、Default AlertDialog に長いメッセージを表示しようとしています。

public static void showAlert(String message, Context con) {
    AlertDialog.Builder dialog = new AlertDialog.Builder(con);
    dialog.setTitle(message);
    dialog.setPositiveButton(" OK ", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.dismiss();

        }
    });
    dialog.show();

}

しかし、長いメッセージを渡すと、警告ダイアログに完全なメッセージが表示されません。ダイアログのテキストを中央に揃えることはできますか? カスタム ダイアログを使用したくありません。

4

3 に答える 3

13

変化する

dialog.setTitle(message);

dialog.setMessage(message);

テキストを中央揃えにする場合は、次の例のようにテキストビューを作成する必要があります。

    AlertDialog.Builder dialog = new AlertDialog.Builder(con);
    dialog.setTitle(message);
    dialog.setPositiveButton(" OK ", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.dismiss();

        }
    });
    dialog.show();

// Must call show() prior to fetching text view
TextView messageView = (TextView)dialog.findViewById(android.R.id.message);
messageView.setGravity(Gravity.CENTER);

出典:Androidダイアログボックスの中央メッセージ

于 2012-05-22T10:02:30.793 に答える
2

次のコードを試してください

public static void showAlert(String message, Context con) {
    AlertDialog.Builder dialog = new AlertDialog.Builder(con);
    dialog.setMessage(message);
    dialog.setPositiveButton(" OK ", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.dismiss();

        }
    });
    dialog.show();

}
于 2012-05-22T10:02:32.353 に答える