1

リストビューからアラートダイアログを開きます (3 つのオプションと 2 つのボタン)

私はこれを持っています:

                LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(LAYOUT_INFLATER_SERVICE);// ass
            inflater = getLayoutInflater();
            View layout = inflater.inflate(R.layout.custom_dialog,null);
            AlertDialog.Builder builder = new AlertDialog.Builder(this);

            builder.setView(layout);
            builder.setTitle("Select");
            builder.setCancelable(true);
            builder.setSingleChoiceItems(tonos, -1,new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int item) {
                    Log.d(TAG, "Option: " + tonos[item]);
                    tone=tonos[item];


                    Button botonOK = (Button) findViewById(R.id.botOK);

                    try {
                        botonOK.setOnClickListener(new OnClickListener() {
                            public void onClick(View v) {
                                Log.d(TAG,"button ok");
                                }
                            });

                    } catch (Exception e) {
                        // TODO Auto-generated catch block
                        Log.d(TAG, "Exception " + e);
                    }



                }
            });


            alert = builder.create();
            alert.show();




    }

2 番目の onClick の引数は正しいですか? 私はクレイジーなテストをしていますが、解決策が見つかりません。

4

1 に答える 1

2
        LayoutInflater inflater = getLayoutInflater();
        View layout = inflater.inflate(R.layout.custom_dialog,null);
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        Button botonOK = (Button) layout.findViewById(R.id.botOK);
        botonOK.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Log.d(TAG,"button ok");
            }
        });

        builder.setView(layout);
        builder.setTitle("Select");
        builder.setCancelable(true);
        builder.setSingleChoiceItems(tonos, -1,new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int item) {
                Log.d(TAG, "Option: " + tonos[item]);
                tone=tonos[item];
            }
        });

        alert = builder.create();
        alert.show();
于 2012-09-12T07:15:43.177 に答える