0

I'm trying to follow this tutorial: http://developer.android.com/guide/topics/ui/controls/pickers.html#DatePicker

This is the code that they provide, so I created a new class. But I'm getting errors in my new class. I'm getting an error when I'm defining public static class DatePickerFragment. The error is Illegal modifier for the class DatePickerFragment; only public, abstract & final are permitted

public static class DatePickerFragment extends DialogFragment
                            implements DatePickerDialog.OnDateSetListener {

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the current date as the default date in the picker
        final Calendar c = Calendar.getInstance();
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH);
        int day = c.get(Calendar.DAY_OF_MONTH);

        // Create a new instance of DatePickerDialog and return it
        return new DatePickerDialog(getActivity(), this, year, month, day);
    }

    public void onDateSet(DatePicker view, int year, int month, int day) {
        // Do something with the date chosen by the user
    }
}
EGHDK
  • 17,818
  • 45
  • 129
  • 204

1 Answers1

1

I am guessing you have the code in a separate .java file. Get rid of static keyword.

If its a inner class then you can have static modifier say within the Activity class.

Also check this which says top level classes cannot be static

Illegal modifier error for static class

You can find an example @

How to transfer the formatted date string from my DatePickerFragment?

Community
  • 1
  • 1
Raghunandan
  • 132,755
  • 26
  • 225
  • 256
  • Thank you. I was unaware that the code was meant to be put inside of the activity. – EGHDK Mar 31 '14 at 02:20
  • @EGHDK There is no need to put the same inside Activity. Just get rid of static keyword – Raghunandan Mar 31 '14 at 02:21
  • What would be the best way to get the int year, day, month passed back into my activity? – EGHDK Mar 31 '14 at 02:50
  • @EGHDK using interface a a call back to the activity. you can check this example i posted long time back http://stackoverflow.com/questions/18211684/how-to-transfer-the-formatted-date-string-from-my-datepickerfragment – Raghunandan Mar 31 '14 at 02:51