【发布时间】:2014-07-09 06:37:45
【问题描述】:
我正在尝试弄清楚如何快速编写此块方法。我似乎无法正确理解闭包语法:
[self.colorPickerView setDidChangeColorBlock:^(UIColor *color){
self.selectedColor.backgroundColor = self.colorPickerView.color;
}];
提前致谢!
我尝试了什么:
self.colorPickerView.didChangeColorBlock({
(color: UIColor) in self.selectedColorView.backgroundColor = self.colorPickerView.color
})
最终解决方案:
self.colorPickerView.didChangeColorBlock = {
(color: UIColor!) in
self.selectedColorView.backgroundColor = color
}
【问题讨论】:
-
我尝试了 serejahh 的建议,以及以上。我得到的错误是: (UIColor) -> (UIColor) -> $T3 is not convertible to 'UIColor'
-
顺便说一句,您应该使用回调块中提供的颜色而不是
self.colorPickerView.color和弱化/强化自我,只要您不想要一个保留循环(块保留自我,自我保留块)。
标签: objective-c xcode swift ios8