加载我的辅助视图时遇到此错误(并尝试从模态视图控制器获取权重变量):
EXC_BAD_ACCESS (code=2, address=0x0)
这是XCode突出显示的行(来自ModalViewController.m):
- (CGFloat)getWeight {
return *(weight);
}
但问题出在viewDidAppear方法的这行代码中(如果我注释掉它,它可以正常工作)(来自ViewController.m):
-(void)viewDidAppear:(BOOL)animated {
[_showModalViewButton setTitle:[NSString stringWithFormat:@"%f",[modalViewController getWeight]] forState:UIControlStateNormal];
}
当上面的代码行在viewDidLoad中时它工作正常,但每次出现辅助视图时我都需要刷新UIButton的标题
(我希望这是一个简单的修复,但我对iOS开发很新)
答案 0 :(得分:0)
您收到此错误是因为您尝试访问不存在的变量(因此地址为0x0)。通过_weight
访问getter中的属性,这是指ivar。
答案 1 :(得分:0)
您问题的最可能原因是您宣布weight
的类型为CGFloat *
,而不仅仅是CGFloat
。
将CGFloat *
的任何引用更改为CGFloat
。
然后将您的getWeight
方法更改为:
return weight;