0

I have an Activity with two Fragments, and I am getting a list of users from my database and storing in an ArrayList in my MainActivity. The problem is that the Adapter is in one of my Fragments. So what I want to do is call this method "initAdapter" inside my Fragment only when I finish getting the data from my Activity.

I tried this:

ExternsFragment fragment =
    (ExternsFragment) getSupportFragmentManager().findFragmentById(R.id.viewPager);
fragment.initAdapters(listUsers);

But I am getting an "Attempt to invoke a virtual method on a null object or reference" error. So I think this is not the right way to do that. How can I execute this method inside my Fragment only after I finish another in my Activity?

This is my stack trace:

09-13 18:05:30.948 23890-23890/com.construct.test I/System.out: 200
09-13 18:05:30.953 23890-23890/com.construct.test D/AndroidRuntime: Shutting down VM
09-13 18:05:30.993 1121-24364/? I/EventLogSendingHelper: Sending log events.
09-13 18:05:31.103 23890-23890/com.construct.test E/AndroidRuntime: FATAL EXCEPTION: main
                                                                    Process: com.construct.test, PID: 23890
                                                                    java.lang.NullPointerException: Attempt to invoke virtual method 'void com.construct.v2.activities.teams.ExternsFragment.initAdapters(java.util.List)' on a null object reference
                                                                        at com.construct.v2.activities.teams.ActivityTeams$3.onResponse(ActivityTeams.java:165)
                                                                        at retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall$1$1.run(ExecutorCallAdapterFactory.java:70)
                                                                        at android.os.Handler.handleCallback(Handler.java:751)
                                                                        at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                        at android.os.Looper.loop(Looper.java:154)
                                                                        at android.app.ActivityThread.main(ActivityThread.java:6123)
                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
09-13 18:05:31.104 3100-4960/? W/ActivityManager:   Force finishing activity com.construct.test/com.construct.v2.activities.teams.ActivityTeams
halfer
  • 19,824
  • 17
  • 99
  • 186
Marcos Guimaraes
  • 1,243
  • 4
  • 27
  • 50

0 Answers0