У меня есть пользовательское фоновое изображение, которое заполняет весь экран позади ListView.
У ListView есть заголовок, который содержит некоторые данные, затем прозрачное поле в 10 dp (, позволяющее нам увидеть немного фонового изображения ), а затем еще некоторые данные. Под этим заголовком, в «теле» ListView, мне нужно, чтобы фон ListView заполнялся полностью до нижней части экрана, даже если элементы внутри не доходят до конца.
Если я устанавливаю фон ListView, то я получаю желаемый эффект всегда заполняя до нижней части экрана, даже с парой элементов (или вообще без ). Но это также закрывает прозрачный разделитель 10dp в заголовке, так что я больше не могу видеть пользовательский фон «сквозь» заголовок.
Может ли кто-нибудь указать мне правильный путь для получения и заполнения экрана при сохранении прозрачного разделителя внутри заголовка?
Кто-то мимоходом упомянул, что мне может понадобиться создать «фальшивые» ячейки элементов, которые можно использовать для создания иллюзии фона ListView, не затрагивая прозрачный разделитель заголовка. Тем не менее, я надеюсь найти более простое решение, если это возможно... или если это является лучшим решением, посмотрите, может ли кто-нибудь дать мне несколько советов о том, как выполнить это наиболее эффективным способом.
Спасибо!
РЕДАКТИРОВАТЬ:
Вот как я определяю заголовок, хотя я думаю, что этот вопрос больше связан с ListView, чем с этим заголовком, который я добавляю в ListView через addHeaderView ().
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:background="@android:color/transparent" android:orientation="vertical">
<include android:id="@+view_list_header/headertop"
layout="@layout/view_list_item"/>
**<LinearLayout android:id="@+view_list_header/ll_transparent_filler"
android:layout_width="fill_parent" android:layout_height="10dp"/>**
<RelativeLayout android:id="@+view_list_header/sort" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView.../> <ImageView.../> <TextView.../>
</RelativeLayout>
</RelativeLayout>
Итак, я пробовал различные способы создания наполнителя 10dp,в настоящее время я использую «пустой» LinearLayout 10dp, чтобы я мог получить ссылку на него и установить его видимость в GONE, когда я хочу (, что я НЕ делаю в случае, когда я обсуждаю)
я устанавливаю фон ListView, как этот :listView.setBackgroundResource (ресурс ).
Опять же, когда я устанавливаю фон для этого ListView, я получаю желаемое поведение фона, всегда заполняющего весь экран, даже если количество элементов, которые я добавил в список (, которые, между прочим, используют одно и то же фонового ресурса, который я устанавливаю для ListView ), недостаточно для заполнения экрана. Но когда я это делаю, «прозрачное поле» 10dp в заголовке не видно, потому что за ним фон ListViews не позволяет увидеть основные представления.
Я предполагаю, что это происходит из-за того, что фон ListView также находится за представлениями верхнего и нижнего колонтитула.
Дело в том, что существует множество способов создать «прозрачное поле» в 10 dp между элементами, через которое будут видны основные представления. Моя проблема заключается в создании фона для «тела» ListView (, т.е. не верхнего/нижнего колонтитула ), который всегда заполняет экран, даже когда список частично заполнен или пуст и в то же время сохраняя эту прозрачность в заголовке, чтобы я мог видеть представления, которые находятся «за» ListView.