-1

I am building a signUp page in which i want a date picker but whenever i click on User Fragment to open Sign up Page then the app crashes, and the error is nullPointerException in EditText. Please Help me to solve it.

Here is the Code of UserFragment.java

public class UserFragment extends Fragment {
public EditText et_Date;
public static final int REQUEST_CODE = 11;
String selectedDate;
private OnFragmentInteractionListener mListener;
public DatePickerDialog.OnDateSetListener setListener;
View view;
public UserFragment() {
}
public static UserFragment newInstance() {
    UserFragment fragment = new UserFragment();
    return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    view = inflater.inflate(R.layout.adduser_fragment, container, false);
    et_Date  = (EditText) view.findViewById(R.id.etdate);
    final FragmentManager fm = ((AppCompatActivity)getActivity()).getSupportFragmentManager();
    et_Date.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            AppCompatDialogFragment newFragment = new DatePickerFragment();
            newFragment.setTargetFragment(UserFragment.this,REQUEST_CODE);
            newFragment.show(fm, "DatePicker");
        }
    });
    return view;
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK){
            selectedDate = data.getStringExtra("SelectedDate");
            et_Date.setText(selectedDate);
    }
}

@Override
public void onAttach(Context context) {
    super.onAttach(context);
    if(context instanceof OnFragmentInteractionListener){
        mListener= (OnFragmentInteractionListener) context;
    }else{
        throw new RuntimeException(context.toString()+"must implement OnFragmentInterationListener");
    }
}

@Override
public void onDetach() {
    super.onDetach();
    mListener = null;
}
public interface OnFragmentInteractionListener {

    public void onFragmentInteraction(Uri uri);
}
}
Phantômaxx
  • 37,901
  • 21
  • 84
  • 115
  • 3
    Show logcat errors, please. – Aspicas Jan 22 '20 at 10:43
  • java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at com.example.navigationdrawer.UserFragment.onCreateView(UserFragment.java:60) – Geetika Sachdeva Jan 22 '20 at 10:59

1 Answers1

0

Your editText with id etdate is actually in layout adduser_fragment? This error may be because of view is in another layout(and you forgot that). Sorry for answer, I don't have enough reputation to post comment.

  • yes it is in adduser_fragment.xml. I gave etdate id to the EditText. – Geetika Sachdeva Jan 22 '20 at 11:19
  • `findViewById` didn't find your `EditText` object. The stack trace (which would look nicer if you add it to your post; comment formatting is limited) clearly says you're invoking `setOnClickListener` on a `null` object, which in your case is `et_Date`. It would be helpful if you'd post `adduser_fragment.xml`. – Petter Hesselberg Jan 22 '20 at 13:29