0

私のプロジェクトには次の例外があります。

12-20 05:51:49.641: E/AndroidRuntime(426): java.lang.RuntimeException: Unable to pause activity {com.dz.dro/com.dz.dro.DroFeedsActivity}: java.lang.NullPointerException
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3162)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3119)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3102)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.access$2400(ActivityThread.java:119)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1870)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.os.Handler.dispatchMessage(Handler.java:99)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.os.Looper.loop(Looper.java:123)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.main(ActivityThread.java:4363)
12-20 05:51:49.641: E/AndroidRuntime(426):  at java.lang.reflect.Method.invokeNative(Native Method)
12-20 05:51:49.641: E/AndroidRuntime(426):  at java.lang.reflect.Method.invoke(Method.java:521)
12-20 05:51:49.641: E/AndroidRuntime(426):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
12-20 05:51:49.641: E/AndroidRuntime(426):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
12-20 05:51:49.641: E/AndroidRuntime(426):  at dalvik.system.NativeStart.main(Native Method)
12-20 05:51:49.641: E/AndroidRuntime(426): Caused by: java.lang.NullPointerException
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.support.v4.app.FragmentManagerImpl.saveFragmentBasicState(FragmentManager.java:1576)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.support.v4.app.FragmentManagerImpl.saveAllState(FragmentManager.java:1617)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.support.v4.app.FragmentActivity.onSaveInstanceState(FragmentActivity.java:481)
12-20 05:51:49.641: E/AndroidRuntime(426):  at com.actionbarsherlock.app.SherlockFragmentActivity.onSaveInstanceState(SherlockFragmentActivity.java:127)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.Activity.performSaveInstanceState(Activity.java:1022)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1180)
12-20 05:51:49.641: E/AndroidRuntime(426):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3144)
12-20 05:51:49.641: E/AndroidRuntime(426):  ... 12 more

プロジェクトでcarasoul効果のあるページャーアダプターを備えたアクションバーシャーロックライブラリを使用しているため。セクションごとに、個別のフラグメントが定義されています。私のアプリでは、すべてがうまくいっていますが、シャーロック アクション バーのアクション メニュー項目をクリックすると、上記のエラーがスローされ、この問題を解決するためにいくつかの方法を試しました。

And I gone through several stackoverflow links which is similar to my issue, none of the links solves my probs

次の方法を使用して、フラグメントを sectionpageradapter に追加しました。

    @Override
    public Fragment getItem(int position) {
        Fragment fragment = new Fragment();

      switch(position) {
         case 0 :
            fragment = new ListUserFeedFragment("some url");
            break;
         case 1 :
            fragment = new ListAllFeedFragment("some url");
            break;
      }
    return fragment;
    }
4

1 に答える 1

0

私はあなたがこのようなことをすべきだと思います:

@Override
public Fragment getItem(int position) {
    ListUserFeedFragment fragment;

  switch(position) {
     case 0 :
        fragment = new ListUserFeedFragment("some url");
        break;
     case 1 :
        fragment = new ListAllFeedFragment("some url");
        break;
  }
return fragment;
}
于 2012-12-20T07:03:19.583 に答える