Я получаю исключение javga.lang.NullPointerException при попытке заменить фрагмент в своей работе. Я использую FrameLayout в качестве моего хоста для динамического размещения фрагмента на основе щелчков кнопок.NullPointerException при попытке заменить фрагмент
Исключение StackTrace:
[AndroidRuntime] Shutting down VM
[AndroidRuntime] FATAL EXCEPTION: main
[AndroidRuntime] Process: com.data3s.eluzzionnative, PID: 1595
[AndroidRuntime] java.lang.NullPointerException
[AndroidRuntime] at android.app.BackStackRecord.run(BackStackRecord.java:653)
[AndroidRuntime] at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)
[AndroidRuntime] at android.app.FragmentManagerImpl$1.run(FragmentManager.java:443)
[AndroidRuntime] at android.os.Handler.handleCallback(Handler.java:733)
[AndroidRuntime] at android.os.Handler.dispatchMessage(Handler.java:95)
[AndroidRuntime] at android.os.Looper.loop(Looper.java:136)
[AndroidRuntime] at android.app.ActivityThread.main(ActivityThread.java:5017)
[AndroidRuntime] at java.lang.reflect.Method.invokeNative(Native Method)
[AndroidRuntime] at java.lang.reflect.Method.invoke(Method.java:515)
[AndroidRuntime] at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
[AndroidRuntime] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
[AndroidRuntime] at dalvik.system.NativeStart.main(Native Method)
[Process] Sending signal. PID: 1595 SIG: 9
Вот код, я использую, чтобы заменить фрагмент.
_myWorkView = new MyWorkFragment();
_myWorkView.ViewModel = myWorkVm;
var trans = FragmentManager.BeginTransaction();
trans.Replace(Resource.Id.myWorkView, _myWorkView);
trans.Commit();
Вещь отметить, если я пытаюсь поместить в фрагменте в OnCreate Activity, он отлично работает. Исключение происходит только тогда, когда я пытаюсь поместить в фрагмент из OnOptionsItemSelected (т. Е. Кран на IMenuItem)
Есть ли что-то, что я делаю неправильно? Дайте мне знать, нужна ли дополнительная информация.
Спасибо.
РЕДАКТИРОВАТЬ:
Проблема заключалась в предыдущем коде, и не имеет отношения к выше фрагмента кода на всех. Сожалею.
Почему вы назначаете _myWorkView = myWorkVm; Вот? –
Вы пробовали это с помощью 'ChildFragmentManager'? –
@ Ненавижу жаль .. его фактически _myWorkView.ViewModel .. обновил вопросы ... Его приложение mvvmcross –