名为' setTransform的多种方法:'发现结果不匹配,参数类型或属性

时间:2016-04-20 14:45:21

标签: ios objective-c cocoa

我在obj中有一个数组 代码

NSArray *buttonViews = @[_aboutMeView , _educationView , _appsView , _skillsView];

所有这些观点都是UIView

我定义了一个for循环

 for(int i=0; i < [buttonViews count]; i++){
        [buttonViews[i] setCenter: self.wwdcView.center]; 
        // I get the error here
        [buttonViews[i] setTransform:CGAffineTransformMakeScale(1.0, 1.0)];
    }

但是后来我遇到了构建错误。

多个名为&#39; setTransform的方法:&#39;发现结果不匹配,参数类型或属性

1 个答案:

答案 0 :(得分:3)

objectAtIndex:返回的对象的类型(buttonViews[i]调用的是id。编译器看到setTransform:的两个声明,它们采用不同的参数类型和抱怨

这会更好:

 for(UIView *buttonView in buttonViews) {
     [buttonView ...];
 }

您还可以将buttonViews声明为NSArray <UIView *>*类型。