2017-09-26 14 views
0

Zxingスキャナ用のカメラ画面を開いており、そのためにカスタムテンプレートも使用しています。私のカスタムテンプレートでは、私はSetDisplayHomeAsUpEnabled(true)を設定しているが、私はそれをクリックしたときに、私はここに、このエラーにJava.Lang.IllegalStateException: Can not perform this action after onSaveInstanceStateXamarin onSavedInstanceStateの後でこの操作を実行できません

を取得しています私のクリックイベントは次のとおりです。

private void Toolbar_NavigationClick(object sender, Android.Support.V7.Widget.Toolbar.NavigationClickEventArgs e) 
    { 
     var mainActivity = Activity as MainActivity; 
     mainActivity?.OnBackPressed(); 
    } 

私のエラーの完全なスタックトレース:

[ERROR] FATAL UNHANDLED EXCEPTION: Java.Lang.IllegalStateException: Can not perform this action after onSaveInstanceState 
--- End of managed Java.Lang.IllegalStateException stack trace --- 
java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState 
at android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1842) 
at android.support.v4.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:775) 
at android.support.v7.widget.Toolbar_NavigationOnClickEventDispatcher.n_onClick(Native Method) 
at android.support.v7.widget.Toolbar_NavigationOnClickEventDispatcher.onClick(Toolbar_NavigationOnClickEventDispatcher.java:37) 
at android.view.View.performClick(View.java:5698) 
at android.view.View$PerformClick.run(View.java:22523) 
at android.os.Handler.handleCallback(Handler.java:739) 
at android.os.Handler.dispatchMessage(Handler.java:95) 
at android.os.Looper.loop(Looper.java:158) 
at android.app.ActivityThread.main(ActivityThread.java:7230) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 

デバイスの戻るボタンは完全に動作していますが、なぜこのエラーがonBackPressed()に届くのかわかりません。

答えて

0

アクティビティでこのメソッドをオーバーライドしましたか?

public override bool OnOptionsItemSelected(IMenuItem item) 
    { 
     switch (item.ItemId) 
     { 
      case Android.Resource.Id.Home: 
       Finish(); 
       return true; 
      default: 
       return base.OnOptionsItemSelected(item); 
     } 

    } 
関連する問題