Iphone 为什么我会收到警告;名为'的多个方法;中心';“发现”;

Iphone 为什么我会收到警告;名为'的多个方法;中心';“发现”;,iphone,xcode,ipad,compiler-warnings,Iphone,Xcode,Ipad,Compiler Warnings,我只有在导入助手类(#import“JLHelper.h”)时才会收到此警告 出现警告的位置的示例 [[subViews objectAtIndex:i] center].y+translation.y)]; 我知道它告诉我编译器可以看到不止一个名为center的方法,但是center是在CLRegion.h的框架中声明的 为什么编译器在这种情况下会看到多个方法?这是一个需要关注的问题吗?如果是,我如何追踪并解决它 谢谢 约翰 问题解决了,多亏了Eric!下面是我的代码修复后的更全面的介绍 N

我只有在导入助手类(#import“JLHelper.h”)时才会收到此警告

出现警告的位置的示例

[[subViews objectAtIndex:i] center].y+translation.y)];
我知道它告诉我编译器可以看到不止一个名为center的方法,但是center是在CLRegion.h的框架中声明的

为什么编译器在这种情况下会看到多个方法?这是一个需要关注的问题吗?如果是,我如何追踪并解决它

谢谢

约翰

问题解决了,多亏了Eric!下面是我的代码修复后的更全面的介绍

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对象

看起来您需要对该对象进行强制转换,以便它知道您的意思是什么

[((OBJECT_TYPE*)[subViews objectAtIndex:i]) center].y+translation.y)];

其中OBJECT_TYPE是一个CLRegion对象

Yep!就这样。对于任何感兴趣的人,我将工作代码作为我问题的附录。谢谢你,埃里克!是的!就这样。对于任何感兴趣的人,我将工作代码作为我问题的附录。谢谢你,埃里克!