1

問題のない単一選択アイテムモードのアラートダイアログにアイテムのリストを表示しています。長さが最大幅サイズを超えている場合、各アイテムのテキストを2行で表示するにはどうすればよいですか。リストアイテムは動的に読み込まれるため、\nブレークポイントで編集することはできません。

誰かがこれで私を助けてくれますか?

事前に感謝します。

ありがとう

サティシュ


返信ありがとうございます。ここでは、AlertDialog.Builderを使用して、デフォルトのオプションでダイアログを表示しています。

AlertDialog.Builder builder=new AlertDialog.Builder(this);
     builder.setTitle("Select the Dealershipname");

     builder.setSingleChoiceItems(items, selectedDealershipname , new OnClickListener() 
     { 
       @Override
       public void onClick(DialogInterface dialog, int which) 
       {


          dialog.cancel();

       }
       });

     builder.show();

ここでは、android.R.id.Text1の種類のレイアウトを使用していません。ここでtextviewのプロパティを変更するにはどうすればよいですか。

4

2 に答える 2

2

アダプター内でプログラムによってリスト項目のレイアウトを変更できるカスタムArrayAdapterを実装する方が幸運かもしれません。ここを参照してください:カスタムArrayAdapterチュートリアル

カスタムアダプタに加えてandroid.R.layout.simple_list_item_single_choice、ArrayAdapterに渡すレイアウトとして使用できます。それは引き続きandroid.R.id.text1TextViewに使用され、ユーザーの介入なしにRadioButtonを自動的に処理します。

于 2012-06-05T20:23:37.627 に答える
1

ダイアログリスト内のTextViewでsetSingleLine(false)を使用するだけです。カスタムArrayAdapterを使用して、テキストビューへの参照を取得できます。

        String[] items = {"foo foo foo foo foo foo foo", "bar bar bar bar bar bar", "foobar foobar foobar foobar foobar foobar"};

        ListAdapter adapter = new ArrayAdapter<String>(this,
                android.R.layout.select_dialog_item, android.R.id.text1, items) {
            public View getView(int position, View convertView, ViewGroup parent) {
                // User super class to create the View
                View v = super.getView(position, convertView, parent);

                // TextView title =
                // (TextView)v.findViewById(android.R.id.title);
                TextView tv = (TextView) v.findViewById(android.R.id.text1);

                tv.setSingleLine(false);

                return v;
            }
        };
于 2012-05-28T15:04:57.647 に答える