我有一个连接到滑块的 IBAction 实例方法,并在名为 datacellR1 的文本字段中显示滑块值。 下面是代码的副本,然后是一个问题。 这两种方法都位于 View2Controller.m 文件的@implementation部分中。
- (IBAction)slider1Change:(id)sender
{
float pctVal1 = [slider1 floatValue]; // this works
[datacellR1 setFloatValue:pctVal1];
[View2Controller CalculateUpdatedTotal ]; // This method needs to work with the datacellR1 contents, but I can’t access it.
}
-(void)CalculateUpdatedTotal
{
// -------- do some work with datacellR1 ----
// This function fails with an error
float newValue = [datacellR1 floatValue];
//some other code goes here
}
滑块 1Change 中的错误是找不到"计算更新总计"方法。 如果我将 CalculateUpdateTotal 从实例方法更改为类方法,则错误是实例变量 datacellR1 在类方法中访问。
关于如何完成这项工作的任何建议?
CalculateUpdatedTotal
,正如所写的,也是一个实例方法。因此,要调用它,您应该将消息传递给self
,而不是类(View2Controller
):
[self CalculateUpdatedTotal];
顺便说一下,在 Objective-C 中,方法名称通常以小写字母开头。