4

我正在使用以下代码使用 Action Sheet 实现 datepicker:

-(void)popupActionSheetWithDatePicker {

UIActionSheet *sheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:@"Done",nil];

UIDatePicker *picker = [[UIDatePicker alloc] init];
self.datePicker = picker;
[self.datePicker setDatePickerMode:UIDatePickerModeDate];
[sheet addSubview:self.datePicker];
[sheet showInView:self.view];

[sheet setBounds:CGRectMake(0,0, 320,500)];

CGRect pickerRect = self.datePicker.bounds;
pickerRect.origin.y = -80;
self.datePicker.bounds = pickerRect;

[sheet bringSubviewToFront:self.datePicker];

[picker release];
[sheet release];   }

现在,选择器弹出并正常工作,除了在选择指示器下方。

我的意思是在选择指示器上及上方我可以选择日期、月份和年份,但在该选择指示器下方我无法选择任何内容,它就像被禁用了一样。

找不到原因或解决办法。

如果可能请发送任何带有 UIActionsheet 代码的工作日期选择器。

提前致谢。

4

2 回答 2

5

当与 UIActionSheet 一起使用时,视图的某些部分不起作用,我遇到了一个非常相似的问题。我的问题是 UIActionSheet 的边界比我添加它的视图大。

我的解决方案是更改插入工作表的位置

[sheet showInView:self.view];

例如,您可能需要将其添加得更高

[sheet showInView:self.view.superview];

希望这至少能让你走上正轨

于 2009-12-04T12:39:35.570 回答
0

我也有这个问题,我想你在选择器后面有一个 UIToolbar。做就是了

[self.navigationController setToolbarHidden:YES];

在选择器中,然后

[self.navigationController setToolbarHidden:NO];

希望这有帮助

于 2010-03-04T05:57:33.870 回答