显示webview时出现延迟

时间:2016-07-30 18:31:53

标签: android android-layout webview

我有像这样的xml布局文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
    android:textAllCaps="true"
    android:id="@+id/hdr_visimisi1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hdr_visimisi1"
    android:textAlignment="center"
    android:textColor="@color/colorPrimary"
    android:layout_centerHorizontal="true" />

<TextView
    android:id="@+id/hdr_visimisi2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/hdr_visimisi1"
    android:text="@string/hdr_itjen"
    android:textAlignment="center"
    android:textColor="@color/colorPrimaryDark"
    android:layout_centerHorizontal="true" />


<TextView
    android:id="@+id/misi"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/hdr_visimisi2"
    android:background="@color/colorHeader"
    android:text="MISI INSPEKTORAT JENDERAL"
    android:textColor="@color/colorTextHeader"
    android:layout_centerHorizontal="true" />

<WebView
    android:id="@+id/ct_misi"
    android:layout_below="@id/misi"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"></WebView>

<TextView
    android:id="@+id/visi"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/ct_misi"
    android:background="@color/colorHeader"
    android:text="VISI INSPEKTORAT JENDERAL"
    android:textColor="@color/colorTextHeader"
    android:layout_centerHorizontal="true" />

<WebView
    android:id="@+id/ct_visi"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/visi"></WebView>

当我在模拟器中运行它时,textview部分直接显示,但webview部分在textview之后(可能是1-2秒滞后)。 为什么会这样?我该怎么做才能最大限度地减少滞后时间。

1 个答案:

答案 0 :(得分:0)

您是否尝试在真实设备上运行应用? 您的问题可能来自您的计算机(可能是低内存以运行模拟器)。

但是你可以尝试通过以下方式来改善性能: 例如:

mwebView = (WebView) findViewById(R.id.myWebView);
        WebSettings webSettings = mwebView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        //improve webView performance
        mwebView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
        mwebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
        mwebView.getSettings().setAppCacheEnabled(true);
        mwebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        webSettings.setDomStorageEnabled(true);
        webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
        webSettings.setUseWideViewPort(true);
        webSettings.setSavePassword(true);
        webSettings.setSaveFormData(true);
        webSettings.setEnableSmoothTransition(true);

完整:https://github.com/TechCybo/Android-App-From-Responsive-Website-NavDrawer/blob/master/app/src/main/java/com/mywebsite/mywebsite/MainActivity.java