Установка и получение блока свойств ios swift

В объективе-мы делаем

@property (strong, nonatomic) void(^Name)(id input, id selectedListItem);

тогда мы устанавливаем свойство

if (self.Name) {
    self.Name(self,nil);
}

для доступа к нему viewcontroller

[classObject setName:^(id input, id selectedListItem)
// do something with the input and selectedListItem
];

как мы можем сделать это в swift3.

1 ответ

@property (strong, nonatomic) void(^Name)(id input, id selectedListItem);

является

var name: ((input: Any, selectedListItem: Any?) -> ())? = nil

Настройка

obj.name = { (input, selectedListItem) in
    // do something with the input and selectedListItem
}

Вызов

if let name = obj.name {
     name(self, nil)
}
Другие вопросы по тегам