有时候,并非总是如此,在某些旧设备上,当我使用动画进行片段事务时,我的应用程序崩溃,并且我收到此错误:
Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1)
如果我不使用动画,问题就会消失。 这是我的代码:
android.support.v4.app.FragmentManager fragmentManager = getFragmentManager();
android.support.v4.app.FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();
fragmentTransaction.setCustomAnimations(R.anim.slide_in_left_s, R.anim.slide_out_right_s,R.anim.slide_in_right_s,R.anim.slide_out_left_s);
fragmentTransaction.replace(R.id.container, fragment,tag).addToBackStack(null);
fragmentTransaction.commit();
这是我的slide_in_left_s.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<translate android:duration="300" android:fromXDelta="-100%"
android:toXDelta="0%"/>
</set>
答案 0 :(得分:1)
使用getSupportFragmentManager()
代替getFragmentManager()
因为您使用的是支持片段。
这就是它在旧设备上崩溃的原因。