Я запутался в использовании внутренних блоков, я просматриваю некоторые документы Apple, но не могу найти правильный ответ.
Некоторые люди всегда говорят, что используют слабый внутренний блок внутри, но некоторые говорят, что используют слабое я в блоках, которые скопированы, а не всегда для использования всегда.
Пример 1:
self.handler = ^(id response, NSError *error)
{
self.newresponse = response; //use weak self here
};
Пример 2:
Используя слабый я,
__weak myViewController *weakSelf = self;
[UIView animateWithDuration:interval delay:0.0 options:curve animations:^
{
[weakSelf.view.superview setTransform:CGAffineTransformMakeTranslation(0, -106)];
//in above is it use of weak is neassary
}
completion:^(BOOL finished)
{
}];
Без слабой самости;
__weak myViewController *weakSelf = self;
[UIView animateWithDuration:interval delay:0.0 options:curve animations:^
{
[myViewController.view.superview setTransform:CGAffineTransformMakeTranslation(0, -106)];
}
completion:^(BOOL finished)
{
}];
В приведенных выше примерах, которые являются правильными...? ** Я использую ARC