0

我试图创建一个包含项目的列表。我不希望列表会填满整个屏幕。我真的试图创建一个列表,它的宽度和高度将分别与最长列表项的大小和列表中的项目数几乎相等。换句话说;

如果我有一件物品,在安卓上我会看到

------------------------
     |      |
     | 1    |





------------------------

如果我有 2 件物品

------------------------
     |      |
     | 1    |
     | 2    |




------------------------

如果我有名称为“llll”和“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);
4

2 回答 2

1

您可能将 ListView 的宽度属性设置为“fill_parent”或“match_parent”。您在原始问题中包含的布局适用于 ListView 中的一个元素。

底线,检查父视图的宽度属性(在这种情况下,它将是 ListView 本身)。

于 2013-01-24T12:30:57.487 回答
0

您可以将 ListView 的高度更改为某个值,例如如下

android:layout_height = "XXdp"

使 XX 足以容纳您允许出现的最大项目数,如果项目数更大,它将自动滚动。如果项目很少,则存在空白。

于 2013-01-24T12:42:29.480 回答