Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get date from date picker in android?

I am using the DatePicker for my application. I want to get the date that I have selected (on the DatePicker), but it's not returning the selected date. It's always returning the current date. How can I get the selected date from DatePicker?

Any help will be appreciated.

    day = pickDate.getDayOfMonth();
    month = pickDate.getMonth() + 1;
    year = pickDate.getYear();
    readAndChoose = (Button) findViewById(R.id.btnReadAndChoose);
    readAndChoose.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            Context context = getApplicationContext();
            CharSequence text = "" + day + "-" + "" + month + "-" + ""
                    + year;
            int duration = Toast.LENGTH_SHORT;
            Toast toast = Toast.makeText(context, text, duration);
            toast.show();

            /*
             * Intent i = new Intent(BirthActivity.this,
             * CompassActivity.class); startActivity(i);
             */

        }

    });

I don't want create a DatePicker dialog but I want to use the DatePicker provided by Android.

like image 454
user2147892 Avatar asked Mar 08 '13 09:03

user2147892


2 Answers

private DatePickerDialog.OnDateSetListener datePickerListener 
                = new DatePickerDialog.OnDateSetListener() {

        // when dialog box is closed, below method will be called.
        public void onDateSet(DatePicker view, int selectedYear,
                int selectedMonth, int selectedDay) {
            year = selectedYear;
            month = selectedMonth;
            day = selectedDay;

            // set selected date into textview
            tvDisplayDate.setText(new StringBuilder().append(month + 1)
               .append("-").append(day).append("-").append(year)
               .append(" "));

            // set selected date into datepicker also
            dpResult.init(year, month, day, null);

        }
    };

Refer Thsi link..May be this will help you.:- http://www.mkyong.com/android/android-date-picker-example/

like image 81
Anklet. Avatar answered Oct 04 '22 02:10

Anklet.


 public class pickerdate extends Activity {
 /** Called when the activity is first created. */
 private TextView mDateDisplay;
 private Button mPickDate;
 private int mYear;
 private int mMonth;
 private int mDay;

 static final int DATE_DIALOG_ID = 0;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);


    mDateDisplay = (TextView) findViewById(R.id.dateDisplay);
    mPickDate = (Button) findViewById(R.id.pickDate);


    mPickDate.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            showDialog(DATE_DIALOG_ID);
        }
    });


    final Calendar c = Calendar.getInstance();
    mYear = c.get(Calendar.YEAR);
    mMonth = c.get(Calendar.MONTH);
    mDay = c.get(Calendar.DAY_OF_MONTH);

    updateDisplay();
}
private void updateDisplay() {
    mDateDisplay.setText(
        new StringBuilder()
                // Month is 0 based so add 1
                .append(mMonth + 1).append("-")
                .append(mDay).append("-")
                .append(mYear).append(" "));
}
private DatePickerDialog.OnDateSetListener mDateSetListener =
    new DatePickerDialog.OnDateSetListener() {

        public void onDateSet(DatePicker view, int year, 
                              int monthOfYear, int dayOfMonth) {
            mYear = year;
            mMonth = monthOfYear;
            mDay = dayOfMonth;
            updateDisplay();
        }
    };
    @Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
        case DATE_DIALOG_ID:
            return new DatePickerDialog(this,
                        mDateSetListener,
                        mYear, mMonth, mDay);
        }
        return null;
    }
 }

Main Layout File

  <?xml version="1.0" encoding="utf-8"?>
  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:orientation="vertical">
 <TextView android:id="@+id/dateDisplay"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text=""/>
 <Button android:id="@+id/pickDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Date Picker"/>
  </LinearLayout>

The above code works. I hope this is exactly what your look for.

like image 38
Raghunandan Avatar answered Oct 04 '22 02:10

Raghunandan