首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >解除UIDatePicker

解除UIDatePicker
EN

Stack Overflow用户
提问于 2012-12-13 17:11:46
回答 1查看 4.4K关注 0票数 3

我向UITextField添加了一个UIDatePicker作为输入视图

代码语言:javascript
运行
复制
UIDatePicker    *oBirth;
NSDateFormatter *dateFormat;

_editingField = [[UITextField alloc] initWithFrame : CGRectMake(80, 12, 215, 25)];    
dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat : @"dd/MM/yyyy"];

oBirth = [[UIDatePicker alloc] initWithFrame : CGRectMake(0, 0, 120, 45)];
oBirth.date = [dateFormat dateFromString : sField];
NSLog(@"%@", oBirth.subviews);
[oBirth addTarget : self
           action : @selector(updateDate:)
 forControlEvents : UIControlEventValueChanged];
[oBirth addTarget : self
           action : @selector(dismissDate:)
 forControlEvents : UIControlEventTouchUpOutside];
[oBirth setDatePickerMode : UIDatePickerModeDate];
_editingField.tag = 1;
_editingField.inputView = oBirth;

如何在不创建不可见视图的情况下关闭UIDatePicker

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-13 17:21:44

尝尝这个

代码语言:javascript
运行
复制
[_editingField resignFirstResponder];

编辑

dismissDate未被调用。

删除这段代码

代码语言:javascript
运行
复制
[oBirth addTarget : self
           action : @selector(dismissDate:)
 forControlEvents : UIControlEventTouchUpOutside];

并添加以下内容

代码语言:javascript
运行
复制
     // single tap gesture recognizer
        UITapGestureRecognizer *tapGestureRecognize = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissDate:)];
        tapGestureRecognize.numberOfTapsRequired = 1;
        [self.view addGestureRecognizer:tapGestureRecognize];

您的回调

代码语言:javascript
运行
复制
- (void)dismissDate:(UIGestureRecognizer *)gestureRecognizer {
    NSLog(@"Resign your responder");
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13856455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档