0

Я получаю исключение 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)

Есть ли что-то, что я делаю неправильно? Дайте мне знать, нужна ли дополнительная информация.

Спасибо.

РЕДАКТИРОВАТЬ:

Проблема заключалась в предыдущем коде, и не имеет отношения к выше фрагмента кода на всех. Сожалею.

+0

Почему вы назначаете _myWorkView = myWorkVm; Вот? –

+1

Вы пробовали это с помощью 'ChildFragmentManager'? –

+0

@ Ненавижу жаль .. его фактически _myWorkView.ViewModel .. обновил вопросы ... Его приложение mvvmcross –

ответ

0

Проблема была в предыдущем коде и вообще не связана с вышеприведенным фрагментом. Сожалею.

Смежные вопросы