× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
最近Blockをよく使うのでまとめ。
まず前提としてblockの中でインスタンス変数を使用する場合の注意点。 ・循環参照 block内でインスタンス変数にアクセスする場合インスタンス変数を直接参照するのではなく、そのインスタンス変数が属しているインスタンスオブジェクト全体を参照するため循環参照が発生する。 コレを回避する為に自インスタンスを弱参照のオブジェクトに代入してブロック内で強参照のオブジェクトとして扱う必要がある。 @propaty (strong,nonatomic) IBOutlet *messageLabel; __weak typeof(self)weakSelf = self; anotherClass.handler = ^(NSString *messageString){ __strong typeof (weakSelf)strongSelf = weakSelf; [strongSelf-> messageLabel setText:messageString]; } こんな感じ。 PR |
|
忍者ブログ [PR] |