我在obj中有一个数组-c
代码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)];
}
但是然后我得到一个构建错误。
发现多个名为“ setTransform:”的方法,它们的结果,参数类型或属性不匹配
最佳答案
objectAtIndex:
返回的对象的类型(buttonViews[i]
调用的是id
。编译器会看到两个setTransform:
的声明,它们带有不同的参数类型,并且会抱怨。
这样会更好:
for(UIView *buttonView in buttonViews) {
[buttonView ...];
}
您也可以将buttonViews声明为
NSArray <UIView *>*
类型。关于ios - 发现多个名为“setTransform:”的方法,它们的结果,参数类型或属性不匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36747412/