1

編集:以下のコードは機能します!エラーは私のコードの別の場所にありました...

元の投稿は次のとおりです...

編集終了。

AlertDialogを開くOnClickListener()を使用してonResume()にロードされたtextViewがあります。AlertDialog には、いくつかのテキストと、setPositivtButton、setNegativeButton、および setNeutralButton の 3 つのボタンがあります。AlertDialog が開かれるたびに、変数に応じてニュートラル ボタンのテキストを変更したいと考えています。私はこれを試しましたが、成功しませんでした...

enter code here
protected void OnResume() {
    TextView text = new TextView (this);
    text.setTextColor(res.getColor(R.color.white));
    text.setOnClickListener(new OnClickListener() {
        public void onClick(final View v) {                 
            final String str = (String) v.getTag();
            String buttonText = "Jump";
            AlertDialog.Builder showinf = new AlertDialog.Builder(v.getContext());
            showinf.setTitle("SomeTitle");
            showinf.setMessage("someMeassage");
            showinf.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();
                }
            });
            if (variable == true) buttonText = "Sit";
                else buttonText = "Jump";
            variable = !variable; //For testing purposes...
            showinf.setNeutralButton(buttonText, new DialogInterface.OnClickListener()     {                        
                public void onClick(DialogInterface dialog, int id) {
                    // Do something
                }
            });
            showinf.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    // Do something
                }
            });
            showinf.show();
        };
    });
}

このコードに数週間の微調整を加えることで何とか可能ですか、それともすべてを書き直す必要がありますか? textView がクリックされるたびに AlertDialog を作成する必要がありますか、それとも setNeutralButton コードで直接これを行うことは可能ですか?

編集:

コードを少し変更しましたが (変数 = !変数)、何も変わりません。また、ダイアログでこれを試してみましたが、成功しませんでした...

私はアンドロイドが初めてですが、onResume() で TextView と Dialog を設定すると、onResume() が onClickListener を使用して再度読み込まれるまで何も変更できなくなりますか?

-- トミー

4

1 に答える 1

-1

必要な値を保持するシングルトン クラスを作成します。次に、そのシングルトン クラスのインスタンスを使用してアクセスします。

于 2012-11-10T12:00:24.120 に答える