У меня есть следующие Objective-C синтаксис:Swift Эквивалент блока Objective-C?
@property (nonatomic, copy) void(^cropBlock)(UIImage *image);
- (void)cropAction {
if (self.cropBlock) {
self.cropBlock(self.imageScrollView.capture);
}
}
Мне нужно эквивалентный синтаксис Swift, и я попробовал:
var cropBlock: (UIImage) -> Void
private func cropAction() {
if (self.cropBlock != nil) {
self.cropBlock(self.imageScrollView.capture);
}
}
Но я получил ошибку:
(UIImage) -> Void' is not convertible to 'UInt8
Что является правильным представлением Swift?
@Stuart Я прочитал эту книгу. – confile
@confile ОК здорово! Ответы и объяснения на ваши вопросы лежат на этих страницах; иногда полезно обратиться к ним, когда возникает конкретный вопрос. Я бы сказал, что, основываясь на нескольких ваших вопросах, это может помочь вам оглянуться назад на опции, тип вывода, свойства и определенные основы языка (например, нет необходимости в точках с запятой в конце операторов, круглых скобках в операциях потока управления, 'self' для ссылки на переменные экземпляра). Или вы можете начать с более простого кодирования Swift, чтобы справиться с языком? – Stuart