0

私はレッスンの異なる時間の配列を持っています。配列に含まれる情報の種類の例を次に示します。

09.00 - 10.00、11.00 - 12.00、13.00 - 14.00、15.00 - 16.00

ユーザーが希望の時間を選択できるように、これらのレッスンを UIPickerView に表示しています。しかし、実際の時間に最も近いレッスンを PickerView に自動的に事前選択してもらいたいです。どういうわけか実際の日付と比較する必要があります。誰もそれを行う方法を考えていますか?

前もって感謝します!

4

1 に答える 1

1

これにより、現在の時:分が得られます

    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"HH:mm"];
    NSString *str = [dateFormat stringFromDate:[NSDate date]];

次に、違いを見つけて最小値を確認できます。

これで、次のような条件を付けることができます:

if      (hh <= 10 )            { // 09:00 - 10:00 should come }
else if (hh == 10 && mm < 30 ) { // 09:00 - 10:00 should come }

else if (hh == 10 && mm > 30 ) { // 11:00 - 12:00 should come }
else if (hh <= 12 && mm < 30 ) { // 11:00 - 12:00 should come }

else if (hh == 14 && mm < 30 ) { // 13:00 - 14:00 should come }
else if (hh <= 14 && mm > 30 ) { // 13:00 - 14:00 should come }

else if (hh == 14 && mm < 30 ) { // 15:00 - 16:00 should come }
else if (hh <= 14 && mm > 30 ) { // 15:00 - 16:00 should come }
else                           { // 15:00 - 16:00 should come }
于 2013-08-15T14:50:54.877 に答える