0

チャンネルのリストを含む警告ボックスがあります。

クリックされたチャネルの値を取得したいと思います。

これは可能ですか?

私はこれまでこれを持っています..

  public void ShowChannelDialog(){

      String[] channels = new String[_publicChannels.size()];
      channels = _publicChannels.toArray(channels);

      AlertDialog.Builder showChannel = new AlertDialog.Builder(this);
      showChannel.setTitle("Channel List ("+(_publicChannels.size()-1)+" channels)");


      showChannel.setItems(channels, new DialogInterface.OnClickListener() {

        public void onClick(DialogInterface dialog, int item) {
            _publicChannels.clear();
            if (item == (_publicChannels.size())) {
                System.out.println("NEW CHANNEL");
                CreateNewChannel();
                dialog.dismiss();
            }else{
                String channel = String.valueOf(item);
                System.out.println("Selected: " + channel);
            }
        }
    });

String.valueof(item) は配列内の int 値のみを提供します。実際のテキスト値が必要です。

ありがとうございました!

4

3 に答える 3

1

の代わりにString.valueOf(item)、 を使用しますchannels[item]。チャネルも作成する必要がありますfinal

于 2012-04-09T06:49:38.650 に答える
1

フォローしてみてください

 if (item == (_publicChannels.size())) {
            System.out.println("NEW CHANNEL");
            CreateNewChannel();
            dialog.dismiss();
        }else{
            String channel = channels[item];
            System.out.println("Selected: " + channel);
        }
于 2012-04-09T06:49:46.887 に答える
0

終了時の確認ダイアログ ボックスの例

            AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setMessage("Are you sure you want to exit?")
                .setCancelable(false)
                .setPositiveButton("Yes",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                finish();
                            }
                        })
                .setNegativeButton("No",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                dialog.cancel();
                            }
                        });
        AlertDialog alert = builder.create();
        alert.show();
于 2012-04-09T07:29:46.577 に答える