欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 中ViewPager中使用WebView的注意事项

程序员文章站 2024-02-11 17:54:28
android 中viewpager中使用webview的注意事项 前言: 今天在做项目时遇到了一个小问题 首先使用viewpager显示多个页面,然后在每个页面...

android 中viewpager中使用webview的注意事项

前言:

今天在做项目时遇到了一个小问题

首先使用viewpager显示多个页面,然后在每个页面上使用fragment显示数据,其中有一部分数据是通过webview加载的html标签。

具体xml布局如下

<?xml version="1.0" encoding="utf-8"?>
<scrollview xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="@color/background" >

  <linearlayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <textview
      android:id="@+id/article_title"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_marginright="10dp"
      android:layout_marginleft="10dp"
      android:layout_margintop="10dp"
      android:layout_marginbottom="2dp"
      android:text="some title"
      android:textappearance="?android:attr/textappearancelarge"
      android:textcolor="@color/article_title"
      android:textstyle="bold" />

    <linearlayout
      android:id="@+id/ll_seperator"
      android:layout_width="fill_parent"
      android:layout_height="1dp"
      android:layout_marginleft="10dp"
      android:layout_marginright="10dp"
      android:layout_margintop="5dp"
      android:layout_marginbottom="5dp"
      android:background="@color/text"
      android:orientation="horizontal" >
    </linearlayout>

    <webview
      android:id="@+id/article_content"
      android:layout_width="match_parent"
      android:layout_marginright="10dp"
      android:layout_marginleft="10dp"
      android:layout_height="wrap_content" />

    <textview
      android:id="@+id/article_link"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_marginbottom="5dp"
      android:layout_margintop="5dp"
      android:layout_marginright="10dp"
      android:layout_marginleft="10dp"
      android:text="view full article"
      android:textcolor="@color/article_title"
      android:textstyle="bold" />
  </linearlayout>

</scrollview>

问题是当数据加载完毕之后,webview会自动移动到页面的最顶端,如果用户想查看处于webview上方的textview内容则必须手动将页面往下拉

解决以上问题可以在scrollview中所使用的linearlayout添加如下属性:

android:descendantfocusability="blocksdescendants"

如有疑问请留言或到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!