首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法隐藏UIDatePicker

无法隐藏UIDatePicker
EN

Stack Overflow用户
提问于 2013-07-16 14:33:13
回答 2查看 1.3K关注 0票数 2

对于我的应用程序,我尝试在单击名为time的文本字段时显示UIDatePicker。

在我的viewDidLoad中,我这样初始化它:

代码语言:javascript
运行
复制
- (void)viewDidLoad {

time.delegate = self;
[time setValue:[UIColor darkGrayColor] forKeyPath:@"_placeholderLabel.textColor"];

datepicker = [[UIDatePicker alloc] init];
datepicker.datePickerMode = UIDatePickerModeCountDownTimer;
dateformatter= [[NSDateFormatter alloc] init];
[dateformatter setDateFormat:@"HH:mm:ss"];

}

然后,在textFieldShouldBeginEditing方法中,我有如下代码:

代码语言:javascript
运行
复制
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {

if (textField == time){
    button.hidden = NO;
    datepicker.hidden = NO;

}

    return NO;
}

但是,我的UIDatePicker仍然处于隐藏状态,而且我确信插座是连接的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-16 14:44:21

从您的代码中删除此行并检查您的选择器是否放置在Xib中。

代码语言:javascript
运行
复制
datepicker = [[UIDatePicker alloc] init];
票数 3
EN

Stack Overflow用户

发布于 2013-07-16 14:44:07

在textFieldShouldBeginEditing中,你需要根据需要设置框架,然后你必须在视图中添加日期选择器。例如

代码语言:javascript
运行
复制
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {

    if (textField == _time){

        CGRect frame = datepicker.frame;
        frame.origin.x = 100(for eg,set according to you);
        frame.origin.y = 100(for eg,set according to you);
        datepicker.frame = frame;
        [self.view addSubview:datepicker];
        button.hidden = NO;
        datepicker.hidden = NO;

    }

    return NO;
}

完成此操作后,将其删除。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17669562

复制
相关文章

相似问题

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