我對平板電腦設備上運行有兩個窗格的應用程序,左一個我對更換片段的簡單的動畫:爲什麼將硬件加速設置爲false會使事情變得更快?
private void loadLeftFragment(Fragment fragment, boolean isAnimated) {
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
if (isAnimated) {
fragmentTransaction.setCustomAnimations(android.R.anim.slide_in_left,
android.R.anim.slide_out_right);
}
fragmentTransaction.addToBackStack(null);
fragmentTransaction.replace(R.id.left_frame, fragment).commit();
}
請注意代碼的動畫和平。它在Nexus 7上運行非常流暢,但在Galaxy Tab 2上卻不行。所以我在AndroidManifest.xml中試用了android:hardwareAccelerated="true/false"
標籤。而我得到的是,當值設置爲false
時,Galaxy Tab 2上的動畫就像Nexus 7上的動畫一樣,即平滑和美觀。我沒有想到,假設它應該是反之亦然 - 將hardwareAccelerated
值設置爲true
會使事情變得更加平滑。但它發生,如果我把它設置爲true
我看到滯後,當false
它只是很好!我在這裏錯過了什麼?謝謝。
但如何構造依賴關係?你在不同的真實設備上有一些工作的例子嗎? – djdance