Как ущипнуть, чтобы увеличить 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, но я не могу в этом конкретном случае. У меня есть adview чуть ниже WebView, поэтому, когда пользователь прокручивает, он прокручивает весь путь до Adview, но если я не использую 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>
Есть ли возможность показать щепотку, чтобы увеличить мою ситуацию или заставить второй прокрутку макета работать до просмотра рекламы?
Спасибо @Fustigador. Я быстро посмотрел здесь developer.android.com/reference/android/view/MotionEvent Итак, разрешение перехватывать события касания только для MotionEvent.ACTION_SCROLL и блокирование всех остальных будет решением для увеличения масштабирования, чем?
Вы также должны запретить ScrollView перехватывать событие движения, когда веб-просмотр перехватывает его, но да, в основном это так.
Отметьте это stackoverflow.com/questions/33117198/…