由于未捕获的异常 'CALayerInvalidGeometry' 而终止应用程序,原因:'CALayer 位置包含 NaN

Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN

当我点击按钮时,我得到这个 exception.I 不知道我哪里做错了有人帮助我。我的应用程序因为这个异常而被拒绝 我的代码:

 UILabel *rememberMeLabelObj = [[UILabel  alloc]initWithFrame:CGRectMake(xaxisForRememberMeLabel, yaxisForRememberMeLabel, widthForRememberMeLabel, heightForRememberMeLabel)];
rememberMeLabelObj.text = @"Remember me";
rememberMeLabelObj.font =[UIFont systemFontOfSize:14.0];

rememberMeLabelObj.textColor = [UIColor colorWithRed:0.816f green:0.592f  blue:0.157f alpha:1.00f];
[self.view addSubview:rememberMeLabelObj];

您正在调用 UILabel 框架方法,并且可能以某种方式计算值并且结果是 NaN,这意味着 "not a number" 并且,正如您正确建议的那样,它可能是 o 除法的结果-零操作。

但它的出现还有很多其他原因:http://en.wikipedia.org/wiki/NaN

参考:kuba

我实际上解决了我的问题 我没有给出浮点值 因为这个我得到了 exception.I 给了 CGFloat 并给出了整数值,比如 400,350 等,但我需要给出 400.0f 。所以,我明白了问题。现在已清除

我的iOSApp在模拟器版本8.x时也有同样的问题,在9.x版本没有问题,我检查并删除了以下代码后,问题已解决!

- (void)viewWillAppear:(BOOL)animated
 {
  [LoadTableView setContentOffset:CGPointMake(CGFLOAT_MAX, CGFLOAT_MAX)];

  [super viewWillAppear:YES];

 }


 - (void)viewDidAppear:(BOOL)animated
 {
   [LoadTableView reloadData];

   LoadTableView.hidden = 0;

   [super viewDidAppear:YES];


 }