我正在使用日期选择器在一个视图上制作一个iphone应用程序。我有另一个日期,我正在从数据库中获取。现在我希望从选定的日期开始启用日期选择器,这样用户就不会再次无法选择相同的日期。有没有办法从选定的日期启用选取器?如果有人知道,请帮帮我。
-(void)findextenddate
{
NSLog(@"count:%@",adddatetime);
addatimeclass = adddatetime;
endnsdate = [addatimeclass objectAtIndex:[addatimeclass count]-1];
endnsdate1 = (NSDate*) endnsdate;
NSLog(@"formatdate:%@",endnsdate1);
}
-(IBAction)clicktoextend:(id)sender
{
actionsheet = [[UIActionSheet alloc]init];
actionsheet = [[UIActionSheet alloc] initWithTitle:@"Select Date" delegate:self
cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Select", nil];
[actionsheet showInView:[self.view superview]];
[actionsheet setFrame:CGRectMake(0, 117, 320, 383)];
pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 40, 320, 216)];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
pickerView.minimumDate = endnsdate1 ;
pickerView.datePickerMode = UIDatePickerModeDate;
//Add picker to action sheet
[actionsheet addSubview:pickerView];
subviews = [actionsheet subviews];
[[subviews objectAtIndex:SelectButtonIndex] setFrame:CGRectMake(20, 266, 280, 46)];
[[subviews objectAtIndex:CancelButtonIndex] setFrame:CGRectMake(20, 317, 280, 46)];
[pickerView release];
[actionsheet release];
}
非常感谢。
发布于 2011-09-09 19:51:35
是的,UIDatePicker的minimumDate
属性就是为了达到这个目的
发布于 2011-09-09 19:52:10
使用
datePicker.minimumDate=YOUR date object
此函数禁用日期之前的所有日期
发布于 2011-09-09 19:53:44
如果您的意思是需要将选取器的日期设置为从数据库获取的日期,则可以通过- (void)setDate:(NSDate *)date animated:(BOOL)animated
方法执行此操作。
如果您需要从该日期(没有过去的日期)开始启用选取器,请按照前面的答案中的建议设置minimumDate
属性。
https://stackoverflow.com/questions/7361167
复制相似问题