AndroidでDatePicker
ウィジェットを使用してユーザーが日付を設定し、確認ボタンがクリックされたときに日付の値を取得するにはどうすればよいですか?AndroidのDatePickerウィジェットから日付を取得する方法は?
答えて
これを試してみてください:
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker1);
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth() + 1;
int year = datePicker.getYear();
DatePickerクラスには、月、年、月の日を取得するメソッドがあります。またはOnDateChangedListenerを使用することもできます。
あなたがアプリに日付ピッカーのウィジェットを追加することを意味します。
あなたの活動のクラスにグローバル変数宣言:このコードダウン
private Button mPickDate;
private int mYear;
private int mMonth;
private int mDay;
static final int DATE_DIALOG_ID = 0;
書き込みのonCreate()関数に:
://date picker presentation
mPickDate = (Button) findViewById(R.id.pickDate);//button for showing date picker dialog
mPickDate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) { showDialog(DATE_DIALOG_ID); }
});
// get the current date
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
// display the current date
updateDisplay();
これらの機能のonCreateの外()関数を書き留め
//return date picker dialog
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_DIALOG_ID:
return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);
}
return null;
}
//update month day year
private void updateDisplay() {
mBodyText.setText(//this is the edit text where you want to show the selected date
new StringBuilder()
// Month is 0 based so add 1
.append(mYear).append("-")
.append(mMonth + 1).append("-")
.append(mDay).append(""));
//.append(mMonth + 1).append("-")
//.append(mDay).append("-")
//.append(mYear).append(" "));
}
// the call back received when the user "sets" the date in the dialog
private DatePickerDialog.OnDateSetListener mDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplay();
}
};
これは最善の回答 – Amir
私はMinDateを設定するために管理しました& MaxDateプログラムで次のように:
final Calendar c = Calendar.getInstance();
int maxYear = c.get(Calendar.YEAR) - 20; // this year (2011) - 20 = 1991
int maxMonth = c.get(Calendar.MONTH);
int maxDay = c.get(Calendar.DAY_OF_MONTH);
int minYear = 1960;
int minMonth = 0; // january
int minDay = 25;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.create_account);
BirthDateDP = (DatePicker) findViewById(R.id.create_account_BirthDate_DatePicker);
BirthDateDP.init(maxYear - 10, maxMonth, maxDay, new OnDateChangedListener()
{
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
if (year < minYear)
view.updateDate(minYear, minMonth, minDay);
if (monthOfYear < minMonth && year == minYear)
view.updateDate(minYear, minMonth, minDay);
if (dayOfMonth < minDay && year == minYear && monthOfYear == minMonth)
view.updateDate(minYear, minMonth, minDay);
if (year > maxYear)
view.updateDate(maxYear, maxMonth, maxDay);
if (monthOfYear > maxMonth && year == maxYear)
view.updateDate(maxYear, maxMonth, maxDay);
if (dayOfMonth > maxDay && year == maxYear && monthOfYear == maxMonth)
view.updateDate(maxYear, maxMonth, maxDay);
}}); // BirthDateDP.init()
} // activity
それは私のために正常に動作し、:)
私はそれと反対にしたい、ということは、現在の日付と現在の日付が最大の日付が現在の日付よりも大きい日付になることを意味します。これはhttp://stackoverflow.com/questions/8675984/date-picker-with-max-and-minimum-date-in-ondatechanged-in-android-1-5 – mH16
はUも
GregorianCalendar calendarBeg=new GregorianCalendar(datePicker.getYear(),
datePicker.getMonth(),datePicker.getDayOfMonth());
Date begin=calendarBeg.getTime();
あなたもこのコードを使用することができ、TE Calendar.GregorianCalendarのJavaクラスを使用することができます楽しみます...
datePicker = (DatePicker) findViewById(R.id.schedule_datePicker);
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth() + 1;
int year = datePicker.getYear();
SimpleDateFormat dateFormatter = new SimpleDateFormat("MM-dd-yyyy");
Date d = new Date(year, month, day);
String strDate = dateFormatter.format(d);
- 1. 日付を設定する/コードビハインドでDatepickerの日付を取得する方法
- 2. datepickerで日付を取得し、GETで渡す方法は?
- 3. datepickerで変更された日付を取得する方法
- 4. 日時形式から日付を取得する方法
- 5. jquery:日付オブジェクトからhh:mm:ssを取得する方法は?
- 6. Android DatePickerとJavaの日付
- 7. Excel:Excelの行から日付を取得する方法
- 8. Cのテキストから日付を取得する方法#
- 9. CSVからインポートする日付を取得する日付を取得する
- 10. jquery datepickerはセルからマウスオーバーして日付を取得します
- 11. jquery datepickerから選択した日/月と年を取得する方法
- 12. ファイル名から日付を取得する方法
- 13. ロケールから日付形式を取得する方法
- 14. xmlファイルから日付を取得する方法
- 15. dateTimeオブジェクトから日付を取得する方法
- 16. Androidの日付ピッカー(現在の日付を取得する)
- 17. Jquery UI datepicker、日付のonclick、日付を取得してURLに渡す
- 18. 日付からエポックタイムを取得する
- 19. Github API v3:日付から日付を取得する
- 20. iPhone:日付ピッカーから日付を取得する
- 21. jQuery ui datepicker、onSelectから曜日を取得する
- 22. 8月2日から9月02日までの日付の取得方法
- 23. 日付を日付から日付に変換する方法
- 24. 特定の日付にモデルから情報を取得する方法は?
- 25. 1日前の日付をextjsフィールドで取得する方法
- 26. datepickerで日付時刻を検証する方法は?
- 27. Pythonの現在の日付から7日前の日付を取得する
- 28. Android - フラグメント/タブ上のdatepickerから値を取得する
- 29. XMLから要素(タグ)名を取得する方法は?日付、 DC:
- 30. 日付間の行の値を取得する方法は?
これは、UIで日付ピッカーの値を更新するときにはうまくいかないようです。それは私に、 – gnB
で始まる価値を与えてくれます。 OnDateSetListenerをdatePickerに設定してください。 –
これは私のために働いた。私はこれらの値を次のように設定します。String day = String.valueof(datePicker.getDayOfMonth();これまでのところ、intを文字列に変換してsqlデータベースに挿入するため完全に動作します) – natur3