#android #list #listview #header #separator
#Android #Список #listview #заголовок #разделитель
Вопрос:
Хорошо, я искал последние пару дней. Я продолжаю находить пользовательские классы, которые люди создали для достижения этой цели. В частности, класс Джеффа Шарки и класс Commonsware.
Я заметил, что Джефф Шарки опубликовал это в 2008 году. Это было некоторое время назад. Интегрировал ли Google способ сделать это без использования пользовательских классов? Я бы действительно хотел, чтобы мне не приходилось использовать пользовательский класс и просто придерживаться java / Android sdk
Ответ №1:
У меня есть twolinelistview.xml в котором у меня есть 2 текстовых представления. Я заполняю нижний текст обычными данными, а верхний текст — данными заголовка. Пустые элементы заголовка не вызывают у меня никаких проблем.
public static class ViewHolder {
TextView toptext;
TextView bottomtext;
}
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@ id/lv_topText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="@drawable/ltGrey"
android:background="@drawable/semiTransparentDrk"
android:textSize="24sp"
android:typeface="sans"
android:textStyle="bold"
android:ellipsize="end"
android:scrollHorizontally="true"
android:padding="10sp"/>
<TextView
android:id="@ id/lv_bottomText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="@drawable/ltGrey"
android:background="@drawable/semiTransparentDrk"
android:textSize="18sp"
android:typeface="sans"
android:textStyle="bold"
android:ellipsize="end"
android:scrollHorizontally="true"
/>
</LinearLayout>
Комментарии:
1. Я думаю, что тогда я буду придерживаться класса Джеффа Шарки. Я обнаружил, что это проще реализовать, чем это. Спасибо за ответ, хотя
2. Я не смотрел на его пример до вашего комментария. Вы не можете превзойти полностью рабочий пример кода 😉 Приветствия.
Ответ №2:
Нет. Google предоставляет SDK с базовыми компонентами с достаточной расширяемостью, чтобы разработчики могли использовать существующие для создания своих собственных компонентов, не выполняя большую часть сложных задач.
Что-то вроде заголовков списков также не так сложно, Google действительно не нужно добавлять это в SDK.
Если вы хотите избежать повторного создания компонентов каждый раз при использовании проекта, затем настройте ваши любимые классы в проекте библиотеки Android. Существуют также библиотеки с компонентами с дополнительной функциональностью, такими как Green Droid и другие.
Комментарии:
1. Заголовки списков, вероятно, не сложны для того, кто занимается Java некоторое время, но для того, кто занимается этим всего неделю, это было довольно сложно. К счастью, у меня в фоновом режиме много actionscript, javascript и php, так что преодолеть это не составило особого труда. Я все еще пытаюсь разобраться в eclipse: D. Хотя я понимаю, что вы говорите. Я проверю green droid.