加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 与DatePicker和NSDate崩溃

发布时间:2020-12-14 18:08:47 所属栏目:百科 来源:网络整理
导读:当我试图在iPhone上启动我的应用程序时,我发生了神秘的崩溃(尽管它在Simulator上完全有效).我认为问题在于这两种方法..: -(void)viewWillAppear:(BOOL)animated{ [self getValueFromPicker];}-(void)getValueFromPicker{ NSDate *now = [NSDate date]; NSDa
当我试图在iPhone上启动我的应用程序时,我发生了神秘的崩溃(尽管它在Simulator上完全有效).我认为问题在于这两种方法..:

-(void)viewWillAppear:(BOOL)animated{
    [self getValueFromPicker];
}


-(void)getValueFromPicker{

    NSDate *now = [NSDate date];

    NSDate *birthDate = self.birthdayPicker.date;

    NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    NSDateComponents *components = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit
                                               fromDate:now
                                                 toDate:birthDate
                                                options:0];

    NSLog(@"Difference in years %i/",components.year);

}

应用程序因SIGABRT错误而崩溃,并且我可以在控制台中看到一个文本:由于未捕获的异常’NSInternalInconsistencyException’而终止应用程序,原因:’无效参数不满足:date’

请帮助我,我真的不知道我做错了什么,当我在控制台的模拟器上做同样的事情我可以看到从现在的日期和日期,用户选择的年数差异.

更新:我删除后[self defaultBirthdayPickerDate];在viewDidLoad部分,它开始工作.但是,现在选择器显示当前日期,选择生日日期不是很方便,现在我仍需要将其当前日期从现在改为过去.

解决方法

大多数情况下,当你应用nil日期时会产生这种类型的错误:检查self.birthdayPicker.date的值是nil还是/ not ??如果你得到UIDatePicker的nil值,则给出正确的条件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读