带有UIDatePicker子视图的UIActionSheet有一个小的透视区域

时间:2013-11-30 23:20:15

标签: ios uiview uidatepicker uiactionsheet

我正在尝试将UIDatePicker视图放入UIActionSheet中。你可以看到我遇到的问题。即使没有键盘,你仍然可以看到那个位置到背景。我在下面的代码中包含了当用户点击屏幕上的按钮时调用的代码。为了澄清,作为背景的视图控制器是具有其自己的导航层次结构的模态视图控制器。除了这个问题(这不重要),但我想移动日期选择器下面的两个选择按钮。有一个简单的方法吗? enter image description here

//How I initialized the action sheet
dateActionSheet = [[UIActionSheet alloc] initWithTitle:@"Choose Date" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Done", nil];

//This code gets called when the user taps a button on the screen
datePicker.datePickerMode = UIDatePickerModeDate;   //UIDatePicker datePicker
[dateActionSheet addSubview:datePicker];        
[dateActionSheet showInView:self.view];

CGRect menuRect = dateActionSheet.frame;
CGFloat orgHeight = menuRect.size.height;
menuRect.origin.y -= 214; //height of picker
menuRect.size.height = orgHeight+214;
dateActionSheet.frame = menuRect;


CGRect pickerRect = datePicker.frame;
pickerRect.origin.y = orgHeight;
datePicker.frame = pickerRect;

1 个答案:

答案 0 :(得分:3)

来自UIActionSheet class reference

  

UIActionSheet并非设计为子类,也不应将视图添加到其层次结构中。

相反,请创建自己的视图,或使用像RMDateSelectionViewController这样的第三方库。