ऑनबैकप्रेस() परीक्षण एनपीई फेंकता है जब मैंने कस्टम संक्रमण जोड़ा। कस्टम संक्रमण के बिना यह ठीक है। क्यूं कर?यूनिट परीक्षण एनपीई, जब मैं खंड कस्टम संक्रमण जोड़ता हूं
यह एनपीई केवल यूनिट परीक्षण में होता है, न कि एपीपी।
class MyActivity {
@Override
public void onBackPressed() {
.......
super.onBackPressed();
}
private void putFragment(Fragment fragment) {
String tag = fragment.getClass().getName();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
// TEST FAILED IF I ADD THE FOLLOWING LINE
transaction.setCustomAnimations(
R.anim.slide_in_left_fade_in,
R.anim.fade_out_short_anim_time,
R.anim.fade_in_short_anim_time,
R.anim.slide_out_right_fade_out);
transaction.replace(R.id.ub__add_profiles_content, fragment, tag);
transaction.addToBackStack(tag);
transaction.commit();
}
}
class MyActivityTest extends RiderRobolectricBase {
@Test
public void onBackPressed() {
putFragment(someFragment);
mMyActivity.onBackPressed();
}
}
अपवाद:
java.lang.NullPointerException
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1126)
at android.support.v4.app.FragmentManagerImpl.removeFragment(FragmentManager.java:1304)
at android.support.v4.app.BackStackRecord.popFromBackStack(BackStackRecord.java:909)
at android.support.v4.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1625)
at android.support.v4.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:561)
at android.support.v4.app.FragmentActivity.onBackPressed(FragmentActivity.java:166)
at MyActivity.onBackPressed(MyActivity.java:28)
MyActivity के आपके ऑनब्रेस्ड में कौन सा कोड है? –
कृपया कम से कम उन xml fade_in_short_anim_time और slide_out_right_fade_out के लिए लेआउट पोस्ट करें। –