0

My app crashes when starting one fragment in witch I want to use findViewByID().

Code looks like this:

{

    User user;
    FirebaseAuth mAuth;
    FirebaseFirestore db;
    TextView Username, Email, Height, Weight;
    String UserS, EmailS, HeightS, WeightS;
    String UID;

    public ProfileFragment() {
        // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {

        //In this line I get error
        Username = (TextView) getView().findViewById(R.id.userName);
        Email = (TextView) getView().findViewById(R.id.EmailProf);
        Height = (TextView) getView().findViewById(R.id.Height);
        Weight = (TextView) getView().findViewById(R.id.Weight);
        mAuth = (FirebaseAuth) FirebaseAuth.getInstance();
        UID = (String) mAuth.getCurrentUser().getUid();
        db = (FirebaseFirestore) FirebaseFirestore.getInstance();

        return inflater.inflate(R.layout.fragment_profile, container, false);
    }


}

java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference at com.example.nutrihub.Fragments.ProfileFragment.onCreateView(ProfileFragment.java:42) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2002) at androidx.fragment.app.FragmentManager$5.run(FragmentManager.java:524) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:246) at android.app.ActivityThread.main(ActivityThread.java:8595) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)


I commented line 42, but I assume that it would've happened in every line not just that one/

P.S. I know code doesn't do anything I deleted part of code that gets data from Firebase Firestore. 

0 Answers0