gpt4 book ai didi

ios - UIDatePicker - 仅选择从现在起 15 分钟后的时间

转载 作者:行者123 更新时间:2023-11-28 22:03:37 25 4
gpt4 key购买 nike

我正在尝试实现一个 UIDatePicker,它只允许用户选择距当前时间 15 分钟或更长时间的日期。分钟分量以 15 分钟为间隔。用户不能选择已经过去的时间。这是我尝试过的方法,我相信我已经很接近了,但我不确定我还缺少什么来完善它;

        UIDatePicker * datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 44, 320, 163)];
datePicker.clipsToBounds=YES;
datePicker.datePickerMode=UIDatePickerModeTime;
datePicker.minuteInterval = 15;
datePicker.minimumDate=[[NSDate date] dateByAddingTimeInterval:60*15];
[datePicker addTarget:self action:@selector(dateChanged:)
forControlEvents:UIControlEventValueChanged];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"EE dd MMM"];
NSString *weekday = [dateFormatter stringFromDate:[NSDate date]];
[dateFormatter setDateFormat:@"HH:mm"];
self.time = [NSString stringWithFormat:@"%@ - Time: %@",weekday,[dateFormatter stringFromDate:datePicker.date]];//self.time is an NSString

这是我的 dateChanged 方法:

- (void)dateChanged:(UIDatePicker *)sender {

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"EE dd MMM"];
NSString *weekday = [dateFormatter stringFromDate: sender.date];
[dateFormatter setDateFormat:@"HH:mm"];

self.time =[NSString stringWithFormat:@"%@ - Time: %@",weekday,[dateFormatter stringFromDate:sender.date]];

但是,如果现在是 15:56,我选择 16:00,我得到的是 16:12。这是不正确的。我应该不能选择16:00,我应该只能选择16:15。另一个例子,如果是 16:10,我应该只能选择 16:30.etc。我对此有点困难。它四舍五入到最接近的一刻钟。有任何问题请告诉我。

用户只能选择15分钟间隔,而且必须是当前15分钟间隔的15分钟。例如,如果是 10:50,则用户只能选择 11:15。如果是 10:20,用户应该只能选择 10:45。

我相信我非常接近,但我无法弄清楚其余的逻辑。

最佳答案

尝试算法:targetMinTime = currentTime + 30 - (currentTime % 15)

关于ios - UIDatePicker - 仅选择从现在起 15 分钟后的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24513593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com