1

ユーザーが削除するアイテムを選択すると、alertDialogを開いて、ユーザーがアイテムを削除することを確認します。onClick for BUTTON_POSITIVEを取得したら、削除するファイル名を取得する必要があります。これは、alertDialogを開く前にわかっていました。setButton(BUTTON_POSITIVE、 "Yes"、msg)を使用してメッセージにファイル名を設定しようとしましたが、メッセージをどこで取得できるかわかりません。誰かがより良い実装を明確にしたり提案したりできますか?

削除ボタンをクリックした後に実行されるコードは次のとおりです。

public void OnClick(View v)
{
    Button b = (Button)v;
    CharSequence cs = b.getText();
    int id = Integer.parseInt(cs.toString());

    AlertDialog alertDialog;
    Message msg = new Message();
    msg.arg1 = id;

    AlertDialog deleteAlert = new AlertDialog.Builder(this).create();
    deleteAlert.setTitle("Trigger Remove Alert");
    deleteAlert.setMessage("Are you sure you want to remove this trigger?");
    deleteAlert.setButton(AlertDialog.BUTTON_POSITIVE, "Yes", msg);
    deleteAlert.setButton(AlertDialog.BUTTON_POSITIVE, "Yes", new OnClickListener(){

    @Override
    public void onClick(DialogInterface dialog, int which) {               
    //remove Trigger
        //boolean b = RemoveTriggerPOI(aid, id);
    }
    });
    deleteAlert.setButton2("No", new OnClickListener(){

    @Override
    public void onClick(DialogInterface dialog, int which) {
    //...
    }
    });
    deleteAlert.show();



}
4

1 に答える 1

0

idまず、またはを次のように定義しますcs

final int id = Integer.parseInt(cs.toString());
final CharSequence cs = b.getText();

次に、ダイアログボタンのonClickリスナーを使用csして内部で操作します。id

 deleteAlert.setButton(AlertDialog.BUTTON_POSITIVE, "Yes", new OnClickListener(){

    @Override
    public void onClick(DialogInterface dialog, int which) {               
       //remove Trigger
       //boolean b = RemoveTriggerPOI(aid, id);

       //SIMPLY USE id OR cs HERE. IT SHOULD WORK
    }
    });
于 2012-04-11T07:09:33.143 に答える