2016-05-29 17 views
0

Hallo, Ich habe diesen Code für Datepicker in android:Android Datepicker erhalten Datumswerte

final TextView tv = (TextView) findViewById(R.id.tv); 
     Button btnDate = (Button) findViewById(R.id.btnDate); 
     btnDate.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Calendar cal = Calendar.getInstance(); 
       DatePickerDialog dpd = new DatePickerDialog(MainActivity.this, MainActivity.this, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH)); 
       dpd.show(); 
      } 
     }); 
    }  
    @Override 
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {  
     Toast.makeText(MainActivity.this, dayOfMonth + "/" + (monthOfYear + 1) + "/" +year , Toast.LENGTH_SHORT).show();  
    } 
} 

ich das Textview mit den Datumswerte vom Benutzer abgeholt festlegen möchten, wie ich es einstellen kann?

Antwort

0

Sie können das Datum, das in onDateSet() Callback empfangen wird, wie gewünscht formatieren. Lassen Sie uns sagen Sie das Datum in 29/05/2016 Format wollen, dann in diesem Fall müssen Sie verwenden -

tv.setText(getString(R.string.day_month_year, dayOfMonth, monthOfYear + 1,year)); 

wo String day_month_year in strings.xml wie folgt erklärt wird -

<string name="day_month_year">%1$s/%2$s/%3$s</string> 
+0

Aber von onDateSet() Textview ist nicht erreichbar ... –

+0

Ok es gelöst ... tnx! TextView tv = (Textansicht) findViewById (R.id.tv); tv.setText (getString (R.string.day_month_year, dayOfMonth, monthOfYear + 1, year)); –

+0

Sie müssen Ihre 'TextView' in' onDateSet() 'nicht initialisieren. Deklariere es außerhalb jeder Methode wie diesem - 'private TextView tv;' und initialisiere es in 'onCreate()' so - 'tv = (TextView) findViewById (R.id.tv); ' –

Verwandte Themen