2017-09-22 14 views
0

DatePickerDialog에서 최소 및 최대 날짜를 설정 한 후 최소 날짜에 포커스를 설정할 수 없습니다.datepickerdialog android에서 최소 날짜에 포커스를 설정하는 방법은 무엇입니까?

final DatePickerDialog datePickerDialog = new DatePickerDialog(Test.this, new DatePickerDialog.OnDateSetListener() { 
    @Override 
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { 
    } 
}, mYear, mMonth, mDay); 
Calendar max= Calendar.getInstance(); 
max.add(Calendar.DAY_OF_MONTH, 4); 

datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis()); 
datePickerDialog.getDatePicker().setMaxDate(max.getTimeInMillis()); 
datePickerDialog.show();` 
+2

여기에 코드를 게시 해보세요. – akhilesh0707

답변

0

이것은 오늘을 최소 날짜로 설정하는 코드이며 최대 날짜는 4 년 후에 설정됩니다. 오늘 이전과 4 년 후에는 날짜를 선택할 수 없습니다.

public class DateActivity extends Activity { 

TextView tvDatePicker; 
Calendar cal,cal1; 
long maxDate; 
Date date; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    cal = Calendar.getInstance(); 
    cal1 = Calendar.getInstance(); 

    tvDatePicker = (TextView) findViewById(R.id.txtDatePicker); 
    tvDatePicker.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 
      DatePickerDialog dialog = new DatePickerDialog(MainActivity.this, new OnDateSetListener() { 

       @Override 
       public void onDateSet(DatePicker arg0, int arg1, int arg2, int arg3) { 

       } 
     }, cal.YEAR, cal.MONTH, cal.DAY_OF_MONTH); 
     dialog.getDatePicker().setMinDate(System.currentTimeMillis()); 
     cal1.add(Calendar.YEAR, 4); 
     dialog.getDatePicker().setMaxDate(cal1.getTimeInMillis()); 
     dialog.show(); 
    } 
}); 
}