Как ущипнуть, чтобы увеличить в WebView внутри ScrollView? - PullRequest
0 голосов
/ 26 октября 2018

Как увеличить масштаб для просмотра WebView внутри ScrollView?

Я знаю, что мне следовало бы избегать использования WebView внутри ScrollView, но я должен это делать. У меня есть следующий макет:

<ScrollView
        android:id="@+id/scroll"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RelativeLayout
            android:id="@+id/relativebelowscroll"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <WebView
                android:id="@+id/jobcontent"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:animateLayoutChanges="true">
            </WebView>
            <com.google.android.gms.ads.AdView
                android:id="@+id/adView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/jobcontent"
                android:visibility="visible"
                app:adSize="BANNER"
                app:adUnitId="ca-app-pub-XXXXXXXXXXXXXXXXXX" />
                <!--The following should be shown on ad failed to load -->
            <LinearLayout
                android:id="@+id/dimage"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/jobcontent"
                android:background="#367AB8"
                android:gravity="center_vertical|center_horizontal"
                android:visibility="visible">
                <ImageView
                    android:id="@+id/dimage2"
                    android:layout_width="wrap_content"
                    android:layout_height="50dp"
                    android:layout_gravity="left|center_horizontal"
                    android:src="@drawable/banner_left"
                    android:visibility="visible" />
                <ImageView
                    android:id="@+id/dimage3"
                    android:layout_width="wrap_content"
                    android:layout_height="50dp"
                    android:layout_gravity="right"
                    android:src="@drawable/banner_right"
                    android:visibility="visible" />
            </LinearLayout>
        </RelativeLayout>
    </ScrollView>

Работает хорошо, но с жестом увеличения возникают некоторые проблемы, так как он внутри ScrollView. Я посмотрел другие вопросы, но они все предлагают удалить ScrollView, но я не могу в этом конкретном случае. У меня есть объявление чуть ниже WebView, поэтому, когда пользователь прокручивает его, он прокручивает весь путь до просмотра, но если я не использую ScrollView, прокрутка заканчивается, пока WebView не заканчивается при прокрутке. Он не прокручивается ниже WebView, чтобы показать это объявление. Так что в этом случае ScrollView необходим и не может быть удален. Если я использую этот макет, тогда я могу ущипнуть масштабирование, но не могу прокрутить ниже содержимого WebView, чтобы показать просмотр.

    <WebView
                    android:id="@+id/jobcontent"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:animateLayoutChanges="true">
    </WebView>
                <com.google.android.gms.ads.AdView
                    android:id="@+id/adView"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/jobcontent"
                    android:visibility="visible"
                    app:adSize="BANNER"
                    app:adUnitId="ca-app-pub-XXXXXXXXXXXXXXX" />
                <LinearLayout
                    android:id="@+id/dimage"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/jobcontent"
                    android:background="#367AB8"
                    android:gravity="center_vertical|center_horizontal"
                    android:visibility="visible">
                    <ImageView
                        android:id="@+id/dimage2"
                        android:layout_width="wrap_content"
                        android:layout_height="50dp"
                        android:layout_gravity="left|center_horizontal"
                        android:src="@drawable/banner_left"
                        android:visibility="visible" />
                    <ImageView
                        android:id="@+id/dimage3"
                        android:layout_width="wrap_content"
                        android:layout_height="50dp"
                        android:layout_gravity="right"
                        android:src="@drawable/banner_right"
                        android:visibility="visible" />
</LinearLayout>

Есть ли возможность показать пинч для увеличения масштаба в моей ситуации или заставить работать второй свиток макета до просмотра?

...