2014-07-10 38 views
1

我正在使用webview來顯示來自網絡的圖像。出於某種原因,它顯示大多數圖像,但有一些只顯示空白。 圖片的作品:http://asset.treering.com/P65/27176195.0_- 圖片,這並不:http://asset.treering.com/P00/26683156.0_-Webview不顯示certian圖像所有版本以下KitKat(API19)

這裏是我使用的顯示的代碼:

WebView wv = new WebView(context); 
     if (url != null) 
     { 
      wv.setVerticalScrollBarEnabled(false); 
      wv.setHorizontalScrollBarEnabled(false); 

      if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) { 

       // only for gingerbread and newer versions 
       String data = "<html><body ><img id=\"resizeImage\" src=\"" + url + "_-" + "\" width=\"100%\" alt=\"\" align=\"middle\" /></body></html>"; 
       wv.loadData(data, "text/html; charset=UTF-8", null); 
      } 
      else 
      { 
       this.setPadding(scale5, scale5, scale5, scale5); 
       wv.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN); 
       wv.loadUrl(url + "_-"); 
      } 
      addView(wv,new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT)); 
     } 

回答

1

解決方案:
原來不顯示與32位深度進行編碼的圖像。 android 4.4之前的android webview無法顯示高於24位深度的JPEG圖像。你或者需要將圖像更改爲PNG(其中android支持32位深度)或將圖像導出爲24位深度。