предположим, что я это сделать:Блоков блокируют мой взгляд
MyClass *vista = [[MyClass alloc] initWithFrame:CGRectZero];
vista.onFinish = ^{
CGRect rect = vista.bounds;
// bla bla bla
};
затем Xcode наградит меня с этой ошибкой: захват перспективы сильно в этом блоке, вероятно, приведут к удержанию циклу
Кто-то предложил объявить вид такой как
__unsafe_unretained MyClass *vista = [[MyClass alloc] initWithFrame:CGRectZero];
но проблема в этом. переменной vista присваивается свойство несколько строк вниз.
self.myVista = vista;
и это неатомное, прочное свойство.
Как это решить? Я могу объявить временный идентификатор id var, но это, похоже, является хромым решением.
Любые мысли?
ли '__weak MyClass * weak_vista = перспектива,' работать? – 2013-04-10 19:09:47
А, ладно, извините, я вижу. – 2013-04-10 19:17:07
Но создание слабых ссылок и использование этого внутри блока должно решить проблему. –