我试图创建一个包含项目的列表。我不希望列表会填满整个屏幕。我真的试图创建一个列表,其宽度和高度将分别与列表中最长列表项和项目数相等。换一种说法;
如果我有一个项目,在android上我会看到
------------------------
| |
| 1 |
------------------------
如果我有2件
------------------------
| |
| 1 |
| 2 |
------------------------
如果我有名称为“lll”和“llllllllll”的项目,
------------------------
| |
| lll |
| llllllllll |
------------------------
我的布局是
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp" >
</TextView>
为了得到我上面所说的内容,我应该改变哪一部分?
编辑:
String[] values = new String[] { "1", "2", "3","4","5","6","7","8","9","10","11","12","13","14" };
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_expandable_list_item_1, values);
setListAdapter(adapter);
答案 0 :(得分:1)
您可能将ListView的width属性设置为“fill_parent”或“match_parent”。原始问题中包含的布局适用于ListView中的元素。
底线,检查父视图的width属性(在这种情况下,它将是ListView本身)。
答案 1 :(得分:0)
您可以将ListView的高度更改为某些内容,例如,如下所示
android:layout_height = "XXdp"
使XX足以容纳您允许显示的最大项目数,如果项目数量更大,它将自动滚动。如果项目很少,则存在空格。