ListView под WebView - PullRequest
       8

ListView под WebView

1 голос
/ 16 ноября 2011

Я пишу приложение для Android для отображения форума. Содержание основной статьи находится в WebView, и я хотел бы поместить ответы в ListView под основной статьей.

<?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"
    android:background="@drawable/bg"
    android:orientation="vertical" >

    <WebView
        android:id="@+id/content"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        //android:layout_weight="1.0"
        android:background="@drawable/bg"
        android:cacheColorHint="#00000000"
        android:textColor="#FFDEC2" />

    <ListView

        android:id="@+id/contentlist"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

Здесь ListView вообще не отображается. Если я включу

android:layout_weight="1.0"

экран разделен, оба показаны, но ListView должен быть под WebView, так что для обоих есть только одна полоса прокрутки.

Я думаю, что эта статья: Макет Android - просмотр списка и редактирование текста ниже о моей проблеме, но я не понимаю, как редактировать код этого сайта , чтобы соответствовать моему проблема.

Может кто-нибудь помочь мне, пожалуйста?

1 Ответ

0 голосов
/ 13 апреля 2012

Рэйбриттон правильный. Вы не можете иметь ListView и веб-представление совместно использовать одну и ту же полосу прокрутки. Вы не можете вложить прокрутки.

То, что вам нужно сделать, это создать адаптер ListView. Таким образом, вы можете создать собственное представление для каждой строки списка.

Следуйте этому примеру: http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/

Затем поместите WebView внутри макета и установите его видимость «Gone». Когда вы будете готовы к его появлению, установите в коде значение «Видимый». Укажите, что ListView имеет только 2 строки. Обе строки будут иметь одинаковый макет, но здесь вы указываете индивидуальную видимость каждого элемента, чтобы строки выглядели по-разному.

Короче говоря: познакомьтесь с адаптерами ListView и скрытыми представлениями.

Надеюсь, что это имеет смысл!

...