使用ARC时声明代理

时间:2012-04-02 19:33:12

标签: iphone ios delegates

我试图找出如何声明我的代表而不会出现任何错误。我现在意识到代表应该有一个弱引用,我之前使用(强)退出这显然是一件坏事......

所以现在我宣布我的代表是这样的

class.h

//..
id <SearchViewParsedData> SearchViewdelegate;
//..
@property (weak, nonatomic) id <SearchViewParsedData> SearchViewdelegate;

然而在我的class.m中,我有 @synthesize '他们,我收到了这个错误。

  

__weak属性的现有ivar'SearchViewdelegate'   'SearchViewdelegate'必须是__weak

那么我该如何宣布这个呢?

1 个答案:

答案 0 :(得分:2)

@interface宣布SearchViewDelegate的ivar时,您需要将ivar声明为弱:

__weak id <SearchViewParsedData> SearchViewDelegate;