2

datepickerdialog で MaxDate を設定しました。うまく機能していますが、年セグメントの最小値は 1980 です。その値を 1900 に設定するにはどうすればよいですか。私のコードは次のとおりです。

DatePickerDialog dp=new DatePickerDialog(getParent(),datesetListener,day,month,year);
dp.getDatePicker().setMaxDate(System.currentTimeinMillis());
4

2 に答える 2

1

これを試してdp.setMinDate(new Date(1900,1,1));

于 2014-04-17T12:35:16.223 に答える
1

DatePickerDialog から (単純に getDatePicker() を呼び出すことで) 基になる DatePicker を取得し、以下を使用してその境界を設定できます。

setMinDate(long minDate)

setMaxDate(長い maxDate)

ここで、引数は、デフォルトのタイム ゾーンで 1970 年 1 月 1 日 00:00:00 からの通常のミリ秒数です。もちろん、これらの値を計算する必要がありますが、Calendar クラスを使用する場合は簡単です。現在の日付を渡し、そこから x 年を加算または減算するだけです。

ここここから参照

サンプルコード

        Date min = new Date(2013-1900, 4, 21);
        DatePicker p = getDatePicker();
        p.setMinDate(min.getTime());
于 2014-04-17T12:39:33.127 に答える