web-dev-qa-db-ja.com

Android AlertDialog Builder

表示するalertdialogがありますが、何をしても、alertdialogは空白のタイトルとメッセージで表示されます。アイコン、ポジティブボタン、ネガティブボタンは、正しい説明でOKと表示されます。これが私が使用するコードのスニペットです:マニフェストファイル内:

<uses-sdk
Android:minSdkVersion="5"
Android:targetSdkVersion="16" />

私のコードで私は宣言します:

import Android.app.AlertDialog;
import Android.content.Context;
import Android.content.DialogInterface;

また、コンテキストを宣言します。

final Context context = this;

私はアラートを次の場所に配置します:

public void confirm() {

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);

        // set title

        alertDialogBuilder.setTitle("This is title");
        alertDialogBuilder.setIcon(R.drawable.ic_delete);

        // set dialog message
        alertDialogBuilder
        .setMessage("This is the message")
            .setCancelable(false)
            .setPositiveButton(R.string.yes,new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,int id) {
                    // if this button is clicked, close
                    // current activity
                    MainActivity.this.finish();
                }
              })
            .setNegativeButton(R.string.no,new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,int id) {
                    // if this button is clicked, just close
                    // the dialog box and do nothing
                    dialog.cancel();
                }
            });

            // create alert dialog
            AlertDialog alertDialog = alertDialogBuilder.create();



    // show it
            alertDialog.show();


}

次に、次のように、必要な場所から確認を呼び出します。

confirm();

アラートは正常に表示されます。アイコンが設定されているsetPositiveButtonが適切であり、正しい説明が含まれているsetNegativeButtonが適切であり、正しい説明が含まれている

タイトルが空白ですメッセージが空白です

何か案は?

6
joe_developer

あなたが使うことができます

        AlertDialog.Builder builder = new AlertDialog.Builder(YourActivity.this);
        builder.setTitle("Modify Customer Details");

OR

        Dialog dialog = new Dialog(YourActivity.this);
        dialog.setTitle("Payment Options");
4
Srikanth Pai

この方法でメッセージとタイトルを設定してみてください。これは ダイアログに関する開発者ガイド

// 1.AlertDialog.Builderをそのコンストラクターでインスタンス化します

_AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
_

// 2.さまざまなセッターメソッドをチェーンして、ダイアログの特性を設定します

_builder.setMessage(R.string.dialog_message)
       .setTitle(R.string.dialog_title);
_

// 3. create()からAlertDialogを取得します

_AlertDialog dialog = builder.create();
_
2
Jade Byfield

これは、context( "this")内のテーマに関連しています。このコンテキストを確認する必要があります。または、独自のビューを膨らませ、setViewを呼び出して配置する必要があります。

0
summer

alertDialog作成行を次のように変更してください。

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this, Android.R.style.Theme_Material_Light_Dialog_Alert);