最初に、私は Android にまったく慣れていないので、この質問が本当に単純な場合は申し訳ありませんが、SO または Google で答えを見つけることができませんでした。
私はトレーニング用の小さなアプリをやっていて、II にはこの datePicker オブジェクトがあります:
<DatePicker
android:id="@+id/datePicker1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText2"
android:layout_centerHorizontal="true"
android:layout_marginTop="64dp"
android:calendarViewShown="false"
android:spinnersShown="true"
android:onClick="selectDate" />
だから、私が持っているselectDate関数へのonClick接続を設定しました:
public void selectDate(View view) {
datePick = (DatePicker) findViewById(R.id.datePicker1);
int yy = datePick.getYear();
int mm = datePick.getMonth();
int dd = datePick.getDayOfMonth();
Calendar calendar = Calendar.getInstance();
calendar.set(yy, mm, dd);
int doy = calendar.get(Calendar.DAY_OF_YEAR);
populateDayOfYear(doy);
}
しかし、アプリは期待されていることを実行せず、実際、デバッグ後、この関数に入ることさえありません。
したがって、明確にするために、datePicker の値を変更するたびに EditText フィールドの値を (doy
内の で) 更新したいので、ボタンを押して DatePickerDialog に移動したくありません。そして、EditText フィールドを更新できるようになります。populateDayOfYear(doy)
標準のdatePickerで可能ですか、それとも自分で構築する必要がありますか?