Як атрымаць дату, якая была змененая ў DatePicker

Am распрацоўвае прыкладанне, якое першым атрымлівае бягучую дату з дапамогай DatePicker «Calendar.getInstance ()», а затым, калі карыстальнік змяняе дату. Цяпер, як я атрымліваць новую дату пасля таго, як яна была зменена?

0
Вы маеце на ўвазе карыстальнік хоча, каб выбраць дату ад выбару даты.
дададзена аўтар RajaReddy PolamReddy, крыніца
см майго адказу.
дададзена аўтар RajaReddy PolamReddy, крыніца
@PolamReddyRajaReddy Так, ты маеш рацыю, а не з дыялогу Datepicker
дададзена аўтар User210282, крыніца

2 адказы

declear гэта.

private static final int DATE_DIALOG_ID = 0;

дадаць кадаваньне ў OnCreate ()

//add a click listener to the button
    date_text.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            showDialog(DATE_DIALOG_ID);
        }
    });

   //get the current date      
    mYear = c.get(Calendar.YEAR);
    mMonth = c.get(Calendar.MONTH);
    mDay = c.get(Calendar.DAY_OF_MONTH); 
    String da = Integer.toString(mMonth)+"/"+Integer.toString(mDay)+"/"+Integer.toString(mYear);
    date_text.setText(da);

і гэта знаходзіцца па-за боку OnCreate ()

 private DatePickerDialog.OnDateSetListener mDateSetListener =
    new DatePickerDialog.OnDateSetListener() {
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
        mYear = year;
        mMonth = monthOfYear;
        mDay = dayOfMonth;
        String selectedDate = Integer.toString(mMonth)+"/"+Integer.toString(mDay)+"/"+Integer.toString(mYear);
        date_text.setText(selectedDate);
        System.out.println("selected date is:"+selectedDate);
    }
};

@Override
protected Dialog onCreateDialog(int id)  {
    switch (id) {

    case DATE_DIALOG_ID:
        return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);        
    }
    return null;
}
0
дададзена
Дзякуй, я паспрабую гэты код і абнаўленне
дададзена аўтар User210282, крыніца
Calendar cal = Calendar.getInstance();

DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener(){
            @Override
            public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                cal.set(Calendar.YEAR, year);
                cal.set(Calendar.MONTH, monthOfYear);
                cal.set(Calendar.DAY_OF_MONTH, dayOfMonth);
            }
        };
        return new DatePickerDialog(this, listener, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH));

І, каб атрымаць дату ў выглядзе радка (пятніца 2011/10/28 15: 59: 00: 0)

SimpleDateFormat sdfDate = new SimpleDateFormat("EEEE, d/M/yyyy HH:mm:ss:S");
String date = sdfTime.format(new Date(cal.getTimeInMillis()));
0
дададзена
Так, проста змяніць DatePickerDialog да DatePicker.
дададзена аўтар Carnal, крыніца
Аднак калі гэта не так, проста выкарыстоўваць DatePickerDialog, гэта самы распаўсюджаны.
дададзена аўтар Carnal, крыніца
На самай справе, DatePicker заўсёды будзе адлюстроўвацца ў дыялогу, калі вы паглядзіце на гэта: дададзена аўтар Carnal, крыніца
Дзякуй, але робіць гэта выдатна працуе з DatePicker таксама? Як ваш код кажа DatePickerDialog
дададзена аўтар User210282, крыніца