2016-07-13 4 views
0

ich in android bin hier, Bitte helfen Sie mir, wie kann ich Daten in der Vergangenheit in Date Picker deaktivieren, hatte ich keine Ahnung, wie diese Sache zu führen,Android-Wie kann ich Daten in der Vergangenheit in Datepicker deaktivieren

+2

Mögliche Duplikat von [Wie Daten in der Vergangenheit in Android Datumsauswahl deaktivieren?] (Http://stackoverflow.com/questions/23762231/how-to-disable -past-dates-in-android-datumsauswahl –

Antwort

3

Sie können tun,

datePicker.setMinDate(System.currentTimeMillis() - 1000); 

, die das heutige Datum als Mindestdatum setzt und alle vergangenen Daten deaktiviert sind.

picker ist ein Ziel der Datepicker, wenn Sie ein Objekt von DatePickerDialog verwenden Sie

datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000); 
0

tun kann ich diese Klasse für Datumsauswahl verwenden. Mit diesem können Sie minimale sowie maximale Datum eingestellt

public class Datepicker extends DialogFragment 
    implements DatePickerDialog.OnDateSetListener { 
TextView textView; 
Context context; 
private Boolean isMinDate; 
private DatePickerDialog datepic; 

public Datepicker() { 
} 

public Datepicker(TextView textView, Context context, Boolean isMinDate) { 
    this.context = context; 
    this.textView = textView; 
    this.isMinDate = isMinDate; 
} 

public Datepicker(TextView textView, Context context) { 
    this.context = context; 
    this.textView = textView; 

} 

@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); 
    datepic = new DatePickerDialog(getActivity(), this, year, month, day); 
    datepic.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    if (isMinDate != null) { 
     if (isMinDate) { 
      setMinimumDate(c); 
     } else { 
      setMaximumDate(c); 
     } 
    } 
    // Create a new instance of DatePickerDialog and return it 
    return datepic; 
} 

@Override 
public void onDateSet(android.widget.DatePicker view, int year, int monthOfYear, int dayOfMonth) { 

    int month = monthOfYear + 1; 
    textView.setText(year + "-" + month + "-" + dayOfMonth); 
} 

public void setMinimumDate(Calendar mintime) { 
    datepic.getDatePicker().setMinDate(mintime.getTimeInMillis()); 
} 

public void setMaximumDate(Calendar maxTime) { 
    datepic.getDatePicker().setMaxDate(new Date().getTime()); 
} 
Verwandte Themen