Android - OnDateChangedListener - how do you set this?
There is an event listener in Android called DatePicker.OnDateChangedListener.
I am trying to set a DatePicker view's on date changed listener as follows:
DatePicker dp = new DatePicker(getContext());
dp.setOnDateChangedListener(this);
//where this is my activity extends DatePicker.OnDateChangedListener
But guess what?
Date picker does not have a method called setOnDateChangedListener.
My question is:
- How then do you set a date changed listener in Android?
- If it is not possible to set a date changed listener, what is the purpose for this event?
Any documentation/tutorials will be very helpful.
android android-datepicker
add a comment |Â
There is an event listener in Android called DatePicker.OnDateChangedListener.
I am trying to set a DatePicker view's on date changed listener as follows:
DatePicker dp = new DatePicker(getContext());
dp.setOnDateChangedListener(this);
//where this is my activity extends DatePicker.OnDateChangedListener
But guess what?
Date picker does not have a method called setOnDateChangedListener.
My question is:
- How then do you set a date changed listener in Android?
- If it is not possible to set a date changed listener, what is the purpose for this event?
Any documentation/tutorials will be very helpful.
android android-datepicker
add a comment |Â
There is an event listener in Android called DatePicker.OnDateChangedListener.
I am trying to set a DatePicker view's on date changed listener as follows:
DatePicker dp = new DatePicker(getContext());
dp.setOnDateChangedListener(this);
//where this is my activity extends DatePicker.OnDateChangedListener
But guess what?
Date picker does not have a method called setOnDateChangedListener.
My question is:
- How then do you set a date changed listener in Android?
- If it is not possible to set a date changed listener, what is the purpose for this event?
Any documentation/tutorials will be very helpful.
android android-datepicker
There is an event listener in Android called DatePicker.OnDateChangedListener.
I am trying to set a DatePicker view's on date changed listener as follows:
DatePicker dp = new DatePicker(getContext());
dp.setOnDateChangedListener(this);
//where this is my activity extends DatePicker.OnDateChangedListener
But guess what?
Date picker does not have a method called setOnDateChangedListener.
My question is:
- How then do you set a date changed listener in Android?
- If it is not possible to set a date changed listener, what is the purpose for this event?
Any documentation/tutorials will be very helpful.
android android-datepicker
android android-datepicker
edited May 20 '10 at 18:52
Georg Fritzsche
82.9k20170222
82.9k20170222
asked Jan 12 '10 at 18:00
Tawani
6,125187099
6,125187099
add a comment |Â
add a comment |Â
5 Answers
5
active
oldest
votes
Once you've created your DatePicker
, you need to initialize it with the date you want to display at first. That's the point at which you can add your listener.
See DatePicker.init(int, int, int, OnDateChangedListener)
.
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
add a comment |Â
Best way is
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new DatePicker.OnDateChangedListener()
@Override
public void onDateChanged(DatePicker datePicker, int year, int month, int dayOfMonth)
Log.d("Date", "Year=" + year + " Month=" + (month + 1) + " day=" + dayOfMonth);
);
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
add a comment |Â
This view is in fact a combination of four views, and they are :
Three Spinners
One CalendarView
As of the OnDateChangeListener, the object you passed in to the init method will be simply passed to the contained CalendarView, and I believe that you know that there is a setOnDateChangeListener method in the good old CalendarView...... ......
In the DatePicker class, there is a method called the getCalendarView, and it is the method you can call if you want to get your hands on the contained CalendarView.
Once you get your hands on the contained CalendarView, then, needlessly to say, you can call its setOnDateChangeListener
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
add a comment |Â
Something like this:
DatePicker myDatePicker = (DatePicker) findViewById(R.id.my_date_picker);
myDatePicker.getCalendarView().setOnDateChangeListener(new CalendarView.OnDateChangeListener()
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
Log.d("tag", "finally found the listener, the date is: year " + year + ", month " + month + ", dayOfMonth " + dayOfMonth);
);
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
add a comment |Â
Call init()
on the DatePicker
object.
add a comment |Â
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
Once you've created your DatePicker
, you need to initialize it with the date you want to display at first. That's the point at which you can add your listener.
See DatePicker.init(int, int, int, OnDateChangedListener)
.
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
add a comment |Â
Once you've created your DatePicker
, you need to initialize it with the date you want to display at first. That's the point at which you can add your listener.
See DatePicker.init(int, int, int, OnDateChangedListener)
.
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
add a comment |Â
Once you've created your DatePicker
, you need to initialize it with the date you want to display at first. That's the point at which you can add your listener.
See DatePicker.init(int, int, int, OnDateChangedListener)
.
Once you've created your DatePicker
, you need to initialize it with the date you want to display at first. That's the point at which you can add your listener.
See DatePicker.init(int, int, int, OnDateChangedListener)
.
edited Dec 4 at 15:58
Alireza Noorali
1,391633
1,391633
answered Jan 12 '10 at 18:11
Christopher Orr
94.4k20172175
94.4k20172175
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
add a comment |Â
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
99
99
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
The Android API is really something. I wonder who came up with this ridiculous approach
â Tawani
Jan 28 '10 at 14:36
1
1
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
It doesn't seem that ridiculous to me, and at least it's in the API docs. Anyway, I imagine the reason is because Android widgets usually have several constructors, for when you wish to control what style and layout attributes it should be created with -- so they've kept to that convention rather than creating numerous constructors with many parameters.
â Christopher Orr
Jan 28 '10 at 17:09
5
5
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
It does seem appropriate to have a setOnDateChangedListener() method like is present to set a click listener. I wonder why they make you initialize it to a date when it auto initializes to today for you?
â Ross Hambrick
Aug 2 '11 at 18:00
1
1
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
@ChristopherOrr the terrible part here is mainly that there is a TimePicker and a DatePicker, which have completely different interfaces. (Wow, old post.... nm)
â dstibbe
Oct 29 '15 at 21:46
add a comment |Â
Best way is
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new DatePicker.OnDateChangedListener()
@Override
public void onDateChanged(DatePicker datePicker, int year, int month, int dayOfMonth)
Log.d("Date", "Year=" + year + " Month=" + (month + 1) + " day=" + dayOfMonth);
);
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
add a comment |Â
Best way is
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new DatePicker.OnDateChangedListener()
@Override
public void onDateChanged(DatePicker datePicker, int year, int month, int dayOfMonth)
Log.d("Date", "Year=" + year + " Month=" + (month + 1) + " day=" + dayOfMonth);
);
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
add a comment |Â
Best way is
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new DatePicker.OnDateChangedListener()
@Override
public void onDateChanged(DatePicker datePicker, int year, int month, int dayOfMonth)
Log.d("Date", "Year=" + year + " Month=" + (month + 1) + " day=" + dayOfMonth);
);
Best way is
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new DatePicker.OnDateChangedListener()
@Override
public void onDateChanged(DatePicker datePicker, int year, int month, int dayOfMonth)
Log.d("Date", "Year=" + year + " Month=" + (month + 1) + " day=" + dayOfMonth);
);
answered Jan 22 '16 at 17:20
turbandroid
1,7601730
1,7601730
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
add a comment |Â
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
3
3
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Nice example. thanks.
â Udi Reshef
Jan 11 '17 at 14:55
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
Thanks man perfect solution
â Gowthaman M
Oct 24 at 13:49
add a comment |Â
This view is in fact a combination of four views, and they are :
Three Spinners
One CalendarView
As of the OnDateChangeListener, the object you passed in to the init method will be simply passed to the contained CalendarView, and I believe that you know that there is a setOnDateChangeListener method in the good old CalendarView...... ......
In the DatePicker class, there is a method called the getCalendarView, and it is the method you can call if you want to get your hands on the contained CalendarView.
Once you get your hands on the contained CalendarView, then, needlessly to say, you can call its setOnDateChangeListener
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
add a comment |Â
This view is in fact a combination of four views, and they are :
Three Spinners
One CalendarView
As of the OnDateChangeListener, the object you passed in to the init method will be simply passed to the contained CalendarView, and I believe that you know that there is a setOnDateChangeListener method in the good old CalendarView...... ......
In the DatePicker class, there is a method called the getCalendarView, and it is the method you can call if you want to get your hands on the contained CalendarView.
Once you get your hands on the contained CalendarView, then, needlessly to say, you can call its setOnDateChangeListener
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
add a comment |Â
This view is in fact a combination of four views, and they are :
Three Spinners
One CalendarView
As of the OnDateChangeListener, the object you passed in to the init method will be simply passed to the contained CalendarView, and I believe that you know that there is a setOnDateChangeListener method in the good old CalendarView...... ......
In the DatePicker class, there is a method called the getCalendarView, and it is the method you can call if you want to get your hands on the contained CalendarView.
Once you get your hands on the contained CalendarView, then, needlessly to say, you can call its setOnDateChangeListener
This view is in fact a combination of four views, and they are :
Three Spinners
One CalendarView
As of the OnDateChangeListener, the object you passed in to the init method will be simply passed to the contained CalendarView, and I believe that you know that there is a setOnDateChangeListener method in the good old CalendarView...... ......
In the DatePicker class, there is a method called the getCalendarView, and it is the method you can call if you want to get your hands on the contained CalendarView.
Once you get your hands on the contained CalendarView, then, needlessly to say, you can call its setOnDateChangeListener
answered May 16 '13 at 9:38
user2389347
11112
11112
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
add a comment |Â
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
3
3
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
This is a great workaround for a terrible API. Thanks for this - you just saved my bacon!
â head in the codes
Feb 6 '14 at 18:57
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
datePicker.getCalendarView().setOnDateChangeListener() totally works! Thanks! Not very intuitive though. Still think the API should have been datePicker.setOnDateChangeListner().
â ONE
Jul 2 '17 at 7:56
add a comment |Â
Something like this:
DatePicker myDatePicker = (DatePicker) findViewById(R.id.my_date_picker);
myDatePicker.getCalendarView().setOnDateChangeListener(new CalendarView.OnDateChangeListener()
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
Log.d("tag", "finally found the listener, the date is: year " + year + ", month " + month + ", dayOfMonth " + dayOfMonth);
);
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
add a comment |Â
Something like this:
DatePicker myDatePicker = (DatePicker) findViewById(R.id.my_date_picker);
myDatePicker.getCalendarView().setOnDateChangeListener(new CalendarView.OnDateChangeListener()
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
Log.d("tag", "finally found the listener, the date is: year " + year + ", month " + month + ", dayOfMonth " + dayOfMonth);
);
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
add a comment |Â
Something like this:
DatePicker myDatePicker = (DatePicker) findViewById(R.id.my_date_picker);
myDatePicker.getCalendarView().setOnDateChangeListener(new CalendarView.OnDateChangeListener()
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
Log.d("tag", "finally found the listener, the date is: year " + year + ", month " + month + ", dayOfMonth " + dayOfMonth);
);
Something like this:
DatePicker myDatePicker = (DatePicker) findViewById(R.id.my_date_picker);
myDatePicker.getCalendarView().setOnDateChangeListener(new CalendarView.OnDateChangeListener()
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
Log.d("tag", "finally found the listener, the date is: year " + year + ", month " + month + ", dayOfMonth " + dayOfMonth);
);
answered Aug 9 '15 at 18:51
Andrew
1,78141928
1,78141928
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
add a comment |Â
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
It gives UnsupportedOperationException: CalendarView does not exists for the DatePicker
â turbandroid
Jan 22 '16 at 17:10
1
1
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
Inflate a DatePicker with android:datePickerMode="spinner" and that Listener worked for me. Without any logical explanation...
â user2331454
Apr 26 '16 at 10:13
add a comment |Â
Call init()
on the DatePicker
object.
add a comment |Â
Call init()
on the DatePicker
object.
add a comment |Â
Call init()
on the DatePicker
object.
Call init()
on the DatePicker
object.
answered Jan 12 '10 at 18:11
CommonsWare
763k13818611909
763k13818611909
add a comment |Â
add a comment |Â
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid â¦
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid â¦
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f2051153%2fandroid-ondatechangedlistener-how-do-you-set-this%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown