2013-01-22 54 views
13

在我的項目中有兩個WebViews,我正在切換這些WebViews,以便在加載我的url時獲得平滑的動畫。當我使用Webview.loadUrl()方法時,它在所有設備中都能正常工作。但是當我用loadDataWithBaseUrl()使用相同的代碼時,它在4.0.3中不起作用,但它在2.2,2.3,4.0.4,4.1設備中工作正常。WebView loadDataWithBaseUrl - Android 4.0.3中的奇怪問題

這是從WebKit跳過的錯誤嗎? 我嘗試了很多方法來完成這個任務,但沒有出路。我真的很沮喪,並與此混亂。

如果有人能告訴我一個正確的方法來完成這件事,這將是非常有幫助。

+0

你能否具體談談它不工作可以用動畫。它只是沒有加載任何時期?它會拋出某種錯誤嗎?等等也有一些代碼片段會有所幫助。 –

+1

我正在加載此webview在Assynctask.From doinbackgroungd我打電話runonuithread和加載webview使用loaddatawithbaseurl()..當我使用loadurl()它在4.0.3工作正常,但loaddatawithbaseurl()其失敗.. –

+0

什麼是你在loadDataWithBaseUrl方法中指定的基礎url? –

回答

0

與WebView動畫似乎有一個4.0.3的bug。 什麼修復它是從動畫中刪除alpha。 基本翻譯動畫表現正確。

1

你可以嘗試與webview-

mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 

添加這些財產,因爲它的工作對我來說也喜歡 -

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android"> 
    <translate 

     android:interpolator="@android:anim/cycle_interpolator" 
     android:fromXDelta="100%p" android:toXDelta="0" android:duration="1000"/> 
</set>