2014-06-12 70 views
0

我使用自定義動畫在活動之間進行切換。目標是當前的活動向左滑動並且新的滑動從右側滑動。所以我定義了這些動畫:突然滑出不再工作

slide_out_left.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shareInterpolator="false"> 
    <translate 
     android:duration="600" 
     android:fromXDelta="0%" 
     android:toXDelta="-100%" > 
    </translate> 
</set> 

slide_in_right.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shareInterpolator="false"> 
    <translate 
     android:duration="600" 
     android:fromXDelta="100%" 
     android:toXDelta="0%" > 
    </translate> 
</set> 

而且我在我的活動應用這些:

public void menuLogin (View view) 
{ 
    Intent intent = new Intent (this, LoginActivity.class); 
    startActivity (intent); 
    overridePendingTransition (R.anim.slide_in_right, R.anim.slide_out_left); 
} 

所以stra。事情是:直到兩天前它完全正常工作。舊的活動向左滑出,新的滑入右側。但隨後它停止工作。現在舊的活動就消失了,新的幻燈片放入了。但我沒有更改動畫xml或Java代碼。

但是,如果我將R.anim.slide_out_left更改爲具有相同代碼的除了-100%在toXDelta中爲100%的R.anim.slide_out_right,動畫顯示正確。如果它是-100%,它就不起作用。

我已經重新啓動模擬器,重新啓動我的電腦,檢查SDK的更新,刪除設備並創建一個新的,並清理我的項目。 模擬器設備是Nexus One,CPU Intel Atom x86,Android 4.4.2,主機GPU和我的電腦是Windows 7 64bit。

回答

0

不知道爲什麼我沒有想到這之前: 我創造了另一個仿真器件使用相同的設置(Nexus One的,是Android 4.4.2,主機GPU),但CPU ARM,不管怎樣滑效果再次起作用。