2011-06-26 17 views
0

リストビューを上に表示するAlertDialogと、下にチェックボックスを表示したいと考えています。私が使用しているコードは次のとおりです。AlertDialogのListViewの下にチェックボックスが表示されない

LinearLayout layout = new LinearLayout(mContext); 
        final ListView lv = new ListView(mContext);    
        final CheckBox checkbox = new CheckBox(mContext); 
        checkbox.setText("Make this default"); 
        lv.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, ReaderOptions));          
        lv.setLayoutParams(new LinearLayout.LayoutParams(WindowManager.LayoutParams.FILL_PARENT, WindowManager.LayoutParams.WRAP_CONTENT));   
        lv.setCacheColorHint(Color.TRANSPARENT); 
        layout.addView(lv); 
        layout.addView(checkbox); 

問題は、チェックボックスが表示されず、空白だけです。どうしたの?
ありがとうございます。

答えて

0

LinearLayoutを使用する場合は、向きが適切に設定されていることを確認してください。 LinearLayoutのデフォルトの向きは水平です。そのため、CheckBoxはListViewの右側にあり、画面外では見えません。明示的に方向を垂直に設定してみてください。しかしCommonsWareが示唆しているようにXMLでそれを行うのは

0

ListViewの高さにWRAP_CONTENTを使用することはできません。高さは0で、体重は1です。

そして、これをXMLレイアウトリソースで行い、それをJavaコードからアセンブルするのではなく、膨らませることを検討してください。