ListView показывает только первый результат - только на мобильном устройстве: MasterDetail View

У меня есть эта проблема в моем подробном представлении в моем Master/Detail Шаблонное приложение. Я заполняю расширяемый список в подробном представлении. он работает нормально в виде планшета. но в мобильном устройстве он показывает только первый результат. я даже пытался удалить CollapsingToolbarLayout чтобы убедиться, что просмотр списка не блокируется другими параметрами прокрутки. но я не смог найти проблему.

Настройка адаптера

ArrayList<ClientList> clientLists = ClientList.getClientList(getActivity(), clientResult);
Log.e("Client","--"+clientLists.size()); //Im getting the list size as normal 
clientExpandableAdapter = new ClientExpandableAdapter(getActivity(), clientLists);
expandableListView.setAdapter(clientExpandableAdapter);
expandableListView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
    @Override
    public boolean onChildClick(ExpandableListView expandableListView, View view, int i, int i1, long l) {
        return false;
    }
});

Подробное представление макета

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/item_detail"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.xxx.xxx.ItemDetailFragment"
    android:textIsSelectable="true"
    android:paddingBottom="16dp">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="16dp"
            android:background="@drawable/bottom_border"
            android:id="@+id/mainViewHeader">
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="18sp"
            android:id="@+id/titleHeader"
            android:text="Clients" />
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:id="@+id/titleCountHeader"
            android:text="Clients"
            />
        </RelativeLayout>

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/mainViewHeader"
        android:id="@+id/backgroundView"
        android:background="@color/colorWhite">

            <ExpandableListView
                android:id="@+id/mainExpandableDatalist"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >
            </ExpandableListView>

        </RelativeLayout>

</RelativeLayout>

1 ответ

Решение

По моему мнению, в этом типе проблем много ошибок.

  1. Возможно, вы взяли ScrollView в качестве родителя для listview, что вовсе не обязательно.
  2. Высота элемента ListView или корневого элемента пользовательского макета ListView может быть match_parent | fill_parent который показывает один элемент на весь экран.

Будет лучше, если вы покажете файлы макетов тоже.

Другие вопросы по тегам