只有当我导入我的帮助程序类(#import"JLHelper.h")时,我才会收到此警告。
警告发生位置的示例...
[[subViews objectAtIndex:i] center].y+translation.y)];
我知道它告诉我编译器看到多个名为 center 的方法,但 center 是在 CLRegion.h 的框架中声明的。
为什么编译器在这种情况下会看到多个方法?这是一个值得关注的问题吗,如果是,我该如何追踪和解决它。
谢谢
John
问题解决了,感谢埃里克!这是修复后对我的代码的更广泛了解
NSArray *subViews = [self subviews];
UIImageView *bottomResizer;
int count = [subViews count];
for (int i =count-1; i>=0; i--) {
if([[subViews objectAtIndex:i] tag] == 301) {
bottomResizer = (UIImageView*)[subViews objectAtIndex:i];
[bottomResizer setCenter:CGPointMake([bottomResizer center].x, [bottomResizer center].y+translation.y)];
}
}
看起来你需要投射对象,这样它才能知道你的意思是哪个中心......
[((OBJECT_TYPE*)[subViews objectAtIndex:i]) center].y+translation.y)];
其中OBJECT_TYPE是 CLRegion 对象