2012-01-09 4 views
0

У меня проблема в этом макете, что: он не показывает ни одного ребенка после listView , и listview заполняет это зрелище; она прокручивается, но не показывают какой-либо другой ребенокlinearlayout dosn't показать всех детей

Я попытался пользователя ScrollView но делают проблемы с expandlist

это код макета XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@drawable/select_bg" 
android:orientation="vertical" > 

<TextView 
    android:id="@+id/Header" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/header_bg" 
    android:gravity="center" 
    android:paddingRight="50dip" 
    android:paddingTop="5dip" 
    android:text="@string/select" 
    android:textColor="#60240a" 
    android:textSize="18dip" 
    android:textStyle="bold" > 
</TextView> 

<ListView 
    android:id="@+id/listView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:cacheColorHint="@android:color/transparent" 
    android:divider="@drawable/line_divider" 
    android:dividerHeight="3dip" 
    android:listSelector="@android:color/transparent" > 
</ListView> 

<ImageView 
    android:layout_width="fill_parent" 
    android:layout_height="3dip" 
    android:src="@drawable/line_divider" /> 

<ExpandableListView 
    android:id="@+id/expandableList" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:cacheColorHint="@android:color/transparent" 
    android:childDivider="@drawable/line_divider" 
    android:divider="@drawable/line_divider" 
    android:dividerHeight="2dip" 
    android:listSelector="@android:color/transparent" 
    android:textColor="#60240a" > 
</ExpandableListView> 
</LinearLayout> 

Спасибо

ответ

0

Когда вы используете ListView в макете, вы должны добавить это свойство android:layout_weight для просмотра списка. Без этого свойства вы не сможете получить все виды.

0

Дайте первым ListView некоторую постоянную высоту. Как

<ListView 
android:id="@+id/listView" 
android:layout_width="match_parent" 
android:layout_height="300dip" 
.... 
/> 

LinearLayout не будет прокручиваться, когда его содержание увеличивается. И вы не можете использовать ScrollView в качестве родителя для ListView.

0

Установить все layout_height - атрибуты от прямых дочерних элементов вашего корневого макета до fill_parent. Чем ниже каждый из этих макетов атрибут layout_weight. Значение layout_weight - это целое число в зависимости от того, сколько места они были предоставлены в представлении. Например, два вида: один с весом 2 и один с весом 1: вес 1 в два раза больше веса 2. Просто сыграйте немного с атрибутом веса, чтобы узнать сами.

1

Поскольку ваш макет линейный, на экране не отображаются любые виды, превышающие предел экрана. Да scrollview делает проблемы со списком или расширяемым списком, поскольку сам scrollview прокручивается, он будет потреблять свитки списка и расширяемого списка. Чтобы решить эту проблему, вам необходимо заказать или изменить свои макеты, чтобы просмотреть остальную часть видимых объектов.

0

Вы указали высоту списка как wrap_content, чтобы он занимал все пространство на экране, поэтому вы задаете высоту списка и то же самое, что применяется к расширяемому списку, также дает также высоту исправления.

Надеюсь, что у вас все это Лучшее

Смежные вопросы