0

我正在动态创建一些TextView, ImageView,HtmlView并将其添加到以下布局中。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/parent"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <LinearLayout
        android:id="@+id/ad_space"
        android:layout_width="fill_parent"
        android:layout_height="40dp"
        android:background="@drawable/navigation_bar"
        android:visibility="gone" >
    </LinearLayout>

    <ViewFlipper
        android:id="@+id/viewflipper"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >

        <ScrollView
            android:id="@+id/quiz_scroll_view"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <LinearLayout
                android:id="@+id/quizView"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >

                <LinearLayout
                    android:id="@+id/answer_layout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical" />
            </LinearLayout>
        </ScrollView>

        <ScrollView
            android:id="@+id/quiz_scroll_viewTwo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <LinearLayout
                android:id="@+id/quizViewTwo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >

                <LinearLayout
                    android:id="@+id/answer_layoutTwo"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical" />
            </LinearLayout>
        </ScrollView>
    </ViewFlipper>
</LinearLayout>

我在QuizView运行时添加了一些与问题相关的视图,对于答案,我正在创建一个列表视图运行时并添加到answer_layout. 我用来根据情况BaseAdapter创建运行时。ListView

但我ListView没有显示所有内容,它只显示第一个单元格。

我有这样的添加ListView

ListView ansList = new ListView(Test.this);
ansList.setAdapter(adapter);
ansList.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
ansCellLayout.addView(ansList);

它只显示一个列表单元格。

如果我int为高度设置了一些值,那么它的显示所有列表包含。

ansList.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, 600));

但我不能硬编码列表视图高度,因为我的内容是动态的。

WRAP_CONTENT在这种情况下 如何制作列表视图?

4

2 回答 2

2

根据Google I/O 2010 视频中的 Android 开发人员的说法,无法将 ListView 的高度设置为 wrap_content。如果是 ,则考虑前三个子元素的高度。其他的根本不包括在内。

尝试在运行时设置 ListView 的高度。或者甚至更好地将其设置为 FILL_PARENT。

于 2013-01-08T12:10:44.177 回答
-1

从文档 aListView

在垂直滚动列表中显示项目的视图

所以它不应该与它一起使用,WRAP_CONTENT而是在它里面有一个固定的高度和滚动内容。

LinearLayout为此,您最好使用垂直。

于 2013-01-07T10:33:14.170 回答