2017-01-24 6 views
0

アンドロイドにDatePickerFragmentを使用してdatepickerを作成しました。以下はAndroid:DatePickerFragmentの将来の日を無効にする方法

は今、私はこのコードを破壊することなく、この日付ピッカーでは、将来の日を無効にしたい

@OnClick(R.id.add_info_food_date_edit) 
public void setDate() { 

    DatePickerFragment datePickerFragment = new DatePickerFragment(); 
    datePickerFragment.setCallbackListener(new DatePickerFragment.onDatePickerListener() { 
     @Override 
     public void onDataSet(int year, int month, int day) { 

      int currentMonth = 0; 

      if (month == 0) { 
       currentMonth = 1; 
      } else if (month == 1) { 
       currentMonth = 2; 
      } else if (month == 2) { 
       currentMonth = 3; 
      } else if (month == 3) { 
       currentMonth = 4; 
      } else if (month == 4) { 
       currentMonth = 5; 
      } else if (month == 5) { 
       currentMonth = 6; 
      } else if (month == 6) { 
       currentMonth = 7; 
      } else if (month == 7) { 
       currentMonth = 8; 
      } else if (month == 8) { 
       currentMonth = 9; 
      } else if (month == 9) { 
       currentMonth = 10; 
      } else if (month == 10) { 
       currentMonth = 11; 
      } else if (month == 11) { 
       currentMonth = 12; 
      } else if (month == 12) { 

      } 

      dateEditText.setText(day + "/" + currentMonth + "/" + year); 
     } 
    }); 

    DialogFragment datePicker = datePickerFragment; 

    datePicker.show(getSupportFragmentManager(), "datePicker"); 
} 

、私のコードです。それでも、私はその変化についてよく考えていません。どうすればこれを達成できますか?

アイデアをお持ちですか?更新この

datePicker.getDatePicker().setMaxDate(System.currentTimeMillis()); 

のような現在の日付など

+0

可能な重複http://stackoverflow.com/questions/ 16749361/how-set-date-in-datepicker-dialog-in-android) –

+0

@RahulSharma:コードを見てください。このコードは違いです。 – Barrier

答えて

1

setMaxDate

DialogFragment newFragment = datePickerFragment; 
newFragment.show(getFragmentManager(), "datePicker"); 
getFragmentManager().executePendingTransactions();  // commits the show method from above 
DatePickerDialog dialog = (DatePickerDialog) newFragment.getDialog(); 
DatePicker datePicker = (DatePicker) dialog.getDatePicker(); 
Date date = new Date(); 
datePicker.setMaxDate(date.getTime()); 
[アンドロイドで日付ピッカーダイアログでどのように設定された最大の日?](の
+0

'DialogFragment'に' getDatePicker'がありません。私の最小SDKバージョンは15で、ターゲットは24 – Barrier

+0

です。 – sasikumar

関連する問題