1

I need to update a fragment from the parent activity, but im keep getting null pointer exception and the fragment is already on the screen.

Does anyone knows how can I do that?

Here is how I show the fragment:

            FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
            ft.setCustomAnimations(R.anim.abc_slide_in_bottom, R.anim.abc_slide_out_top, R.anim.abc_slide_in_top, R.anim.abc_slide_out_bottom);
            loginFragment = new LoginFragment();
            Bundle b = new Bundle();
            b.putSerializable(IntentConstants.OPERATORS, supportedCarriers);
            b.putString(IntentConstants.OPERATOR_NAME, carrierName);
            b.putBoolean(IntentConstants.OPERATOR_SUPPORTED, carrierIsSupported);
            loginFragment.setArguments(b);
            ft.replace(R.id.welcome_fragment_container, loginFragment);
            ft.commit();

and after that im calling a fragment method from the parent activity by doing:

runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        loginFragment.setLoginFailed();
                    }
                });

But when doing that the app crashes and I get this in logCat:

 java.lang.NullPointerException
            at com.app.activities.WelcomeActivity$6$1.run(WelcomeActivity.java:285)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:146)
            at android.app.ActivityThread.main(ActivityThread.java:5602)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
            at dalvik.system.NativeStart.main(Native Method)
Darko Petkovski
  • 3,892
  • 13
  • 53
  • 117
  • show more code where from `WelcomeActivity ` class – ρяσѕρєя K Sep 08 '15 at 11:04
  • Easiest way is to make the setLoginFailed() method static – Sjd Sep 08 '15 at 11:04
  • @ρяσѕρєяK im calling the `setLoginFailed()` from a socketIO method. Maybe that will change things? Also does this make difference: im calling the `showLoginFragment()` from a child fragment so it can be replaced with the LoginFragment? – Darko Petkovski Sep 08 '15 at 11:12

1 Answers1

0

refresh a fragment from its parent activity

Update Fragment UI with data passed from Activity

I think it will help you

Community
  • 1
  • 1