ListView с первым видимым элементом, имеющим разный макет

Как я могу сделать первый видимый элемент ListView имеющий другой layout из других.

Первая ячейка имеет описание

Когда список прокручивается, а вторая ячейка находится в первой позиции, отображается описание 2-й ячейки

Я создал пользовательский адаптер с двумя разными макетами. Теперь, как я могу изменить layout когда элемент входит в первую position ?

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

 list.setOnScrollListener(new OnScrollListener() { @Override public void onScrollStateChanged(AbsListView view, int scrollState) { // TODO Auto-generated method stub } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { // TODO Auto-generated method stub if(firstItem != firstVisibleItem) { firstItem = firstVisibleItem; adapter.notifyDataSetChanged(); } } }); 

И внутри класса адаптера проверьте, postion ли firstItem таким же, как firstItem если его равным, тогда отображается макет detals.

Попробуй это

Int visibleposition = ListView.getFirstVisiblePosition ();

Теперь для этой конкретной позиции измените фон элемента списка, подобный этому

В getView () вы можете раздувать другой макет для разных позиций. Делать что-то вроде

  if(position==0){ inflate(first_layout); else{ inflate(other_layout); 

Вы можете попробовать какой-то метод, например

getFirstVisiblePosition

Или это может ответить на вашу проблему

Intereting Posts
Странное поведение с selectAllOnFocus, когда EditText находится в ListView GetSerializableExtra возвращает null Получить ширину и высоту растрового изображения без загрузки в память ViewPager с фрагментами, которые содержат TableLayouts, загружается медленно: Разница между DeadObjectException и причиной исключения NullPointerException Как загрузчик получает команду после «перезапуска системы с командой»? Android FirebaseCouldMessaging: FirebaseInstanceId синхронизирована с фоновом режиме – SERVICE_NOT_AVAILABLE Самостоятельно обновлять собственный apk через сеть программно на android Получить список разрешений Получить формат контактов E64 в Android API менее 16 Понимание функции createUser для firebase (в частности, библиотеки Android) Как «встряхнуть» устройство Android в эмуляторе Android, чтобы вызвать меню dev для отладки моего приложения React Native Данные и синхронизация – синхронизация вручную. Каландр и контакты Маленький всплывающий экран для инструкций, например, четырехзначный Как программно кэшировать / загружать карту google map v2?