2012-12-04 2 views
1

다소 큰 양식을 포함하는 페이지를로드하는 Android 앱을 작성하고 있습니다. 양식을로드하는 동안 진행률 표시 줄을 보여줍니다. 진행률 표시 줄이 사라지면 양식의 빈 페이지 나 몇 가지 요소 만 표시되는 경우가 있습니다 (확인란이 거의없고 텍스트가 없음). 페이지를 스크롤 (클릭)하면 모든 것이 표시됩니다. 여기 뭐가 잘못 됐는지 생각해? 웹보기의Android WebView는 클릭/스크롤 후에 만 ​​콘텐츠를 표시합니다.

설정은 다음과 같습니다

mWebView.getSettings().setJavaScriptEnabled(true); 
mWebView.getSettings().setDatabaseEnabled(true); 
mWebView.getSettings().setDomStorageEnabled(true); 
mWebView.getSettings().setAppCacheMaxSize(1024*1024*128); 
mWebView.getSettings().setAppCachePath(getActivity().getApplicationContext().getCacheDir().getAbsolutePath()); 
mWebView.getSettings().setAllowFileAccess(true); 
mWebView.getSettings().setAppCacheEnabled(true); 
mWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); 
mWebView.setWebChromeClient(new WebChromeClient() { 
     @Override 
     public void onExceededDatabaseQuota(String url, 
          String databaseIdentifier, 
          long currentQuota, 
          long estimatedSize, 
          long totalUsedQuota, 
          WebStorage.QuotaUpdater quotaUpdater) 
     { 
      quotaUpdater.updateQuota(estimatedSize * 2); 
     } 
    }); 
mWebView.addJavascriptInterface(new WebFormJavascriptInterface(), "jsinterface"); 
mWebView.getSettings().setRenderPriority(RenderPriority.HIGH); 
mWebView.getSettings().setPluginState(android.webkit.WebSettings.PluginState.ON_DEMAND); 

및 레이아웃 파일이다 : 나는 다른 문제가 발생하지만이 발생하고있어

<?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"> 
<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/webview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:hardwareAccelerated="false" 
    android:persistentDrawingCache="all" 
/> 
<ProgressBar 
    android:id="@+id/progressbar" 
    style="@android:style/Widget.Holo.ProgressBar.Large" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:indeterminate="true" 
    android:visibility="gone"/> 
</RelativeLayout> 
+0

설정을 삭제하거나 주석을 달아 하나의 라인이 어떤 라인인지를 찾아보십시오. 내 베팅은 캐시 라인 중 하나입니다. – znat

답변

0

. 수행 중

webview.postInvalidateDelayed (1500); onPageFinished에서

은 거의 웹보기가 새 WebViewClient에서 1.5 초() {} 선언 후 자체를 새로 고칠 수있었습니다. 그래도 이보다 더 좋은 대답 일 겁니다.

0

WebViewClient를 대체 하시겠습니까? super.onPageStarted() 및 super.onPageFinished()를 제거하여 WebViewClient의 onPageStarted() 및 onPageFinished() 메서드를 재정의 할 때도 동일한 문제가 발생합니다. WebView에서 빈 페이지를 먼저로드하고 화면을 터치 할 때 콘텐츠를 표시합니다. Return은 내 문제를 해결하는 super (super.onPageStarted(), super.onPageFinished()) 메서드를 호출합니다.

관련 문제