2014-07-24 20 views
6

Ho una visualizzazione Web che sembra ListView espandibile in Android. Funziona bene quando lo carico in una WebView.Lo spazio bianco viene aggiunto in basso quando inserisco Webview all'interno di scrollview in Android

Ma quando sono tenere questo in ScrollView, aggiunge spazio bianco alla parte inferiore dello schermo

xml:

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

    <ScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:fillViewport="true" 
     > 

     <LinearLayout 
      android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <LinearLayout 
      android:layout_width="fill_parent" 
     android:layout_height="300dp" 
     android:background="#000000" 
      ></LinearLayout> 

     <WebView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/webview"/> 



     </LinearLayout> 

     </ScrollView> 


</LinearLayout> 

Questo è prima di fare clic sulle schede nella schermata enter image description here

Dopo facendo clic sulle schede, lo spazio bianco viene aggiunto in basso e scorre anche nello spazio bianco inferiore mentre si fa clic su alcune schede.

mio codice Java:

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.scroll_example); 

     mwebview = (WebView) findViewById(R.id.webview); 
      mwebview.loadUrl("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxent-Executive/664900.html?creport=true&frompage=mobileapi"); 

      WebSettings webSettings = mwebview.getSettings(); 
      webSettings.setJavaScriptEnabled(true); 
      webSettings.setBuiltInZoomControls(true); 
      mwebview.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 

      mwebview.setWebViewClient(new WebViewClient()); 
    } 

spazio bianco viene aggiunto in fondo e si sta adeguando in sé quando si fa clic ultima scheda (cioè Termini e condizioni). enter image description here

Non ho davvero capito se la modifica deve essere eseguita in Php come lato dati HTML o dal nostro lato Java.

chiunque può suggerire per la soluzione.

+0

Perché vuoi un ScrollView con la proprietà 'android: layout_height =" wrap_content "'. Ha senso per te? – luiscosta

+0

se tengo fill_parent anche lo stesso numero – veerendra

+0

Webview all'interno di ScrollView è una sfida strutturale. http://stackoverflow.com/questions/14255427/white-spaces-using-android-webview-inside-scrollview-with-a-jquery-mobile-web?rq=1 –

risposta

0

Hai pensato a qualcosa del genere? Provare a utilizzare il scrollview come visualizzazione root, buona fortuna!

<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:background="#000000" 
       ></LinearLayout> 

      <WebView 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:id="@+id/webview"/> 


     </LinearLayout> 

    </ScrollView> 
+0

In genere, le risposte sono molto più utili se includono una spiegazione di cosa è inteso fare il codice e perché questo risolve il problema senza introdurre altri. –

Problemi correlati