在UITextField上点击时在UIActionSheet中显示UIDatePicker
我正在创build闹钟应用程序。 我想在UITextField
点击时在UIActionSheet
显示UIDatePicker
。
为此,您需要实现UIActionShetDelegate
和UITextFieldDelegate
在textFieldDidBeginEditing
您需要显示如下的操作表:
-(void)textFieldDidBeginEditing:(UITextField *)sender { [self showAction]; } -(void) showAction { UIActionSheet *asheet = [[UIActionSheet alloc] initWithTitle:@"Pick the date." delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Select", nil]; [asheet showInView:[self.view superview]]; [asheet setFrame:CGRectMake(0, 117, 320, 383)]; [asheet release]; } - (void)willPresentActionSheet:(UIActionSheet *)actionSheet { UIDatePicker *pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 40, 320, 216)]; //Configure picker... [pickerView setMinuteInterval:5]; [pickerView setTag: kDatePickerTag]; //Add picker to action sheet [actionSheet addSubview:pickerView]; [pickerView release]; //Gets an array af all of the subviews of our actionSheet NSArray *subviews = [actionSheet subviews]; [[subviews objectAtIndex:SelectButtonIndex] setFrame:CGRectMake(20, 266, 280, 46)]; [[subviews objectAtIndex:CancelButtonIndex] setFrame:CGRectMake(20, 317, 280, 46)]; }
我发现,使用文本框与拾取器时,最简单的方法就是设置文本框的input视图并添加自己的工具栏以方便使用。 确保你有你的“UITextFieldDelegate”和select器方法设置,然后像这样挂钩它。
yourtextfield.delegate = self; [yourtextfield setInputView:yourpickerview]; [yourtextfield setInputAccessoryView:doneBar]; doneBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)]; [doneBar setBarStyle:UIBarStyleBlackTranslucent]; UIBarButtonItem *spacer2 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; [doneBar setItems: [NSArray arrayWithObjects:spacer2, [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:yourtextfield action:@selector(resignFirstResponder)],nil ] animated:YES];
但是如果你更愿意使用一个动作表,那么这是基本的设置:
在操作中添加UIPickerView&abutton – 如何?
您可以将UIDatePicker
设置为UITextField
input视图( @property inputView
)。 ActionSheet只能包含button。
- 在iOS中创build随机的128位AESencryption密钥
- 使用javascript或url在iPhone上检测安装的应用程序
- dismissViewControllerAnimated VS popViewControllerAnimated
- iOS MDM – 如何在设备响应有效响应后closures或停止连接
- 将键盘布局更改为表情符号
- UILable numberoflines和字体大小在放大时间自动设置
- IOSvideo压缩Swift iOS 8损坏的video文件
- 由于libWeANDSFLibrary.a(ASIReachability.o)的重复符号链接器错误
- 在Swift 2中获取SSID