嘿,我有一个我想要显示在AlertDialog中的ListView,我有两个问题:
1.文本显示在左侧,我希望它在中心
2.要选择项目,您必须准确选择行的文本。即使在同一行中的文本外选择,如何选择项目?
您可以在图片中看到橙色突出显示仅在文本本身而不是整行.......
代码:
LinearLayout layout = new LinearLayout(mContext);
ListView lv = new ListView(mContext);
lv.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, BooksOptions));
Builder alert;
alert = new AlertDialog.Builder(this);
layout.addView(lv);
alert.setView(layout);
答案 0 :(得分:2)
您正在使用标准的Android列表项布局android.R.layout.simple_list_item_1
。而是根据该布局创建自己的项目布局并适当地设置属性。
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center"
android:paddingLeft="6dip"
android:minHeight="?android:attr/listPreferredItemHeight"
/>
请注意,您还没有在ListView
本身上设置布局属性。确保您将其指定为宽度以及布局中的match_parent
。