0

部屋予約アプリを作る必要があります。datepicker の値から日付を取得し、timepicker の値から開始時刻と終了時刻を取得します。

そのために、選択した日付を確認したいと思います。次に、選択した日付の開始時刻、終了時刻、またはその間に開始時刻と終了時刻が重なっていないかどうかを確認します。解決策を探していましたが、見つかりませんでした。

例 :

ユーザー A : 日付 = 2013 年 5 月 27 日 開始時刻 = 午後 10 時 終了時刻 = 午後 12 時

ユーザー B : 日付 = 2013 年 5 月 28 日 開始時間 = 午後 10 時 終了時間 = 午後 12 時

私がユーザー C で、2013 年 5 月 27 日の午後 10 時から午後 12 時までの時間枠が必要な場合、日付を比較するにはどうすればよいですか。時間枠がユーザー A によって既に使用されている場合は、開始時刻と終了時刻を比較します。

うまくいけば、誰かが私を正しい方向に向けることができます-私はAndroidが初めてです。どんな助けでも大歓迎です、ありがとう!

私のタイムピッカーコード:

private TimePickerDialog.OnTimeSetListener timePickerStartListener =  new TimePickerDialog.OnTimeSetListener() {
    public void onTimeSet(TimePicker view, int selectedHour, int selectedMinute) {
        hour = selectedHour;
        minute = selectedMinute;

        // set current time into textview
        textStartTime.setText(new StringBuilder().append(padding_str(hour)).append(":").append(padding_str(minute)));

    }
};

private TimePickerDialog.OnTimeSetListener timePickerEndListener =  new TimePickerDialog.OnTimeSetListener() {
    public void onTimeSet(TimePicker view, int selectedHour, int selectedMinute) {
        hour = selectedHour;
        minute = selectedMinute;

        // set current time into textview           
        textEndTime.setText(new StringBuilder().append(padding_str(hour)).append(":").append(padding_str(minute)));

    }
};

private static String padding_str(int c) {
    if (c >= 10)
       return String.valueOf(c);
    else
       return "0" + String.valueOf(c);
}

私のDatePickerコード:

private DatePickerDialog.OnDateSetListener datePickerListener 
            = new DatePickerDialog.OnDateSetListener() {

    // when dialog box is closed, below method will be called.
    public void onDateSet(DatePicker view, int selectedYear,
            int selectedMonth, int selectedDay) {
        year = selectedYear;
        month = selectedMonth;
        day = selectedDay;

        // set selected date into textview
        tvDisplayDate.setText(new StringBuilder().append(month + 1)
           .append("-").append(day).append("-").append(year)
           .append(" "));
    }
};



@Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
    case DATE_DIALOG_ID:
        return new DatePickerDialog(this, datePickerListener, year, month, day);
    case START_TIME_DIALOG_ID:
        return new TimePickerDialog(this, timePickerStartListener, hour, minute, false);
    case END_TIME_DIALOG_ID:
        return new TimePickerDialog(this, timePickerEndListener, hour, minute, false);
    }
    return null;
}
4

1 に答える 1