ListView и WebView Scrolling

Я разрабатываю приложение, которое имеет компонент веб-просмотра и компонент просмотра списка. У меня есть прозрачный макет на моем веб-просмотре, чтобы захватить все пользовательские события. Я выполняю функцию прокрутки JavaScript в веб-просмотре всякий раз, когда пользователь пытается прокрутить. Каждый раз, когда вызывается функция, веб-просмотр прокручивается и возвращает значение, которое используется для прокрутки моего списка. Для прокрутки моего списка я использую myListView.setSelectionFromTop (pos, y). Проблема здесь в том, что если я отключаю прокрутку для просмотра списка, веб-просмотр плавно прокручивается. Но если просмотр списка включен, веб-просмотр не прокручивается плавно. Моя конечная цель заключается в одновременной прокрутке списка и веб-просмотра. Но кажется, что при прокрутке listview он блокирует поток пользовательского интерфейса и, следовательно, замедляет прокрутку webview.

Может кто-нибудь предложить мне, как заставить это работать?

1 ответ

@MysticMagic Вот мой макет XML

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"   xmlns:widget="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF">
<RelativeLayout 
    android:layout_width="40dp"
    android:layout_height="match_parent"
    android:layout_marginTop="26dp"
    android:background="#FFFFFF"
    android:gravity="center"
    android:id="@+id/relLayout"> 
            <ListView
                android:id="@+id/listview"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:dividerHeight="1dp"
                android:divider="#D3D0D9"
                android:layout_centerInParent="true"
                android:background="#E2E2E2"
                android:cacheColorHint="@android:color/transparent"             
                android:footerDividersEnabled="false"
                android:gravity="center"
                android:layout_gravity="center"
                android:listSelector="@android:color/transparent"
                android:visibility="visible"
                android:fillViewport="true" /> 
</RelativeLayout>
<RelativeLayout 
    android:layout_width="fill_parent"
    android:id="@+id/webLayout"
    android:background="#FFFFFF"
    android:layout_height="fill_parent"
    android:layout_toRightOf="@+id/relLayout">
                <WebView 
                    android:id="@+id/webView" 
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:scrollbars="none">
                </WebView> 
                <com.example.view.CustomView
                     android:id="@+id/transparentView"
                     android:layout_width="fill_parent"
                     android:layout_height="fill_parent"        
                     android:layout_alignParentTop="true"
                     android:layout_alignParentLeft="true"/>    
</RelativeLayout>

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