2013-06-11 2 views
8

WebView에 문제가 있습니다. 이 WebView에서 웹 페이지를 열고 있는데 Android 2.x에서는 스크롤되지 않지만 Android 3.x +에서는 스크롤됩니다.Android 2.x에서 WebView가 스크롤되지 않습니다.

모든 아이디어 그 문제를 해결하려면 어떻게해야합니까?

wView = (WebView) findViewById(R.id.webView1); 
wView.getSettings().setJavaScriptEnabled(true); 
wView.setHorizontalScrollBarEnabled(true); 

그리고 레이아웃에 :

내가이 웹보기 위해 사용하는 구성입니다

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#00000000" 
    tools:context=".MainActivity" 
    android:orientation="vertical"> 

    <WebView 
     android:id="@+id/webView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scrollbars="horizontal" /> 

</LinearLayout> 
+0

시도한 모든 사이트 또는이 특정 페이지의 경우입니까? –

+0

하나의 사이트를위한 것입니다. – Styler2go

+1

잠재적으로 이전 브라우저에서 지원하지 않는 사이트의 javascript 또는 css에있는 내용입니다. 이전 장치의 기본 브라우저로 테스트 해보십시오. 거기서 작동합니까? 나는 당신의 코드가 아니라는 느낌이 들었다 ... –

답변

2

페이지가 여전히 사용이 도움이

 ProgressBar pb = (ProgressBar).findViewById(R.id.webview_progressBar1); 

    wv.setWebViewClient(new WebViewClient() { 
      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       return super.shouldOverrideUrlLoading(view, url); 
      } 

      @Override 
      public void onPageFinished(WebView view, String url) { 

       super.onPageFinished(view, url); 

       pb.setVisibility(View.INVISIBLE); 

      } 

      @Override 
      public void onPageStarted(WebView view, String url, Bitmap favicon) { 

       super.onPageStarted(view, url, favicon); 

       pb.setVisibility(View.VISIBLE); 

      } 

     }); 

희망을로드하는 동안 당신의 ProgressBar를 표시하려는 경우 당신은 여전히 ​​경우 문제

WebView wv = (WebView) v.findViewById(R.id.webview); 
    wv.getSettings().setSupportZoom(true); 
    wv.getSettings().setBuiltInZoomControls(true); 
    wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); 
    WebSettings settings = wv.getSettings();   
    settings.setUseWideViewPort(true); 
    settings.setJavaScriptEnabled(true); 
    settings.setSupportMultipleWindows(true); 
    settings.setJavaScriptCanOpenWindowsAutomatically(true); 
    settings.setLoadsImagesAutomatically(true); 
    settings.setLightTouchEnabled(true); 
    settings.setDomStorageEnabled(true); 
    settings.setLoadWithOverviewMode(true); 
    wv.loadUrl("http://www.google.com"); 

이있는 경우 ...

2

당신이 설정하려고하면 :

wView.getSettings().setUseWideViewPort(true); 
2

당신이 수를 scrollview에서 웹보기를 둘러보십시오.

<LinearLayout ...... > <HorizontalScrollView ..... > <WebView .... /> </HorizontalScrollView> </LinearLayout>

6

해당 사이트의 CSS 또는 자바 스크립트에있는 일부 항목은 이전 Android 브라우저에서 지원되지 않지만 코드와 관련이 없습니다.

확실히 대답하기에는 너무 광범위하므로 다른 브라우저에서 사이트를 테스트해야합니다. 사이트에서 특정 라이브러리를 사용하고 있다면 호환성을 확인해야합니다. 여기

도움이 될 수 있습니다 몇 가지 링크입니다 :

+0

스크롤 할 수있는 지원되지 않는 기능을 삭제할 수 있습니까? 일부 요소 위치가 고정되어 있습니다. 이는 문제가 될 수 있습니다. – Styler2go

+0

예. 정말로 유일한 옵션은 당신이 사이트를 바꿀 수있는 능력을 가지기를 바랍니다. 조금만 시행하고 오류를 거쳐야합니다. 여기에서 무엇을 일으키는 지 확실히 말할 수는 없습니다! –

+0

내 사이트가 아닌 경우 어떻게 장치에서 HTML을 편집 할 수 있습니까? – Styler2go

1

대신있는 ScrollView를 사용하도록 XML을 수정합니다. 윌. 안드로이드 웹보기의

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#00000000" 
tools:context=".MainActivity" 
android:orientation="vertical"> 

    <ScrollView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
     <WebView 
     android:id="@+id/webView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scrollbars="horizontal" /> 
    </ScollView> 
</LinearLayout> 
1

개선의 많은 배 +에서 온있다, 거기에 너무 많은 제한은 내가 한 안드로이드 블로그에 기록 포함 과거의 짧은 라인에 갈거야 여기 http://androiddeveloperuser.blogspot.in/2011/05/webview-part-1-capabilities-and.html

은 제한 및 장점에 대해 설명

가로 챌 수없는 많은 이벤트가 있으며,이 구성 요소의 사용자 지정을 제한하는 행동이 오버로드 할 수 있는지에 제한은있다 이 구성 요소의 기본 동작을 으로 변경하는 것이 어렵습니다. 경우

관련 문제