不允许使用“只读”属性分配属性

时间:2011-06-28 13:36:21

标签: objective-c xcode properties aqgridview

我正在实施AQGridView,一切进展顺利。

但是,现在我收到了以下错误。

- (AQGridViewCell *) gridView: (AQGridView *)inGridView cellForItemAtIndex: (NSUInteger) index;
  {
MagazineCell *cell = (MagazineCell *)[inGridView dequeueReusableCellWithIdentifier:@"cell"];
if (!cell) {
    cell = [MagazineCell cell];
    cell.reuseIdentifier = @"cell";
            //Assigning to property with 'readonly' atribute not allowed
}
cell.backgroundColor = [UIColor clearColor];
cell.selectionStyle = AQGridViewCellSelectionStyleGlow;


cell.edicaoLabel.text = [[edicoesArray objectAtIndex:index] name];
    cell.dataLabel.text = [[edicoesArray objectAtIndex:index] name];

return cell;
}

我试图在头文件上执行此操作

@property(nonatomic, readwrite) NSString * reuseIdentifier;

我也试过

@property(nonatomic, assign) NSString * reuseIdentifier;

但仍然没有工作。

我下载了项目'Actors for Netflix'https://github.com/adrianco/Actors-for-Netflix-on-iPad/

的示例

当我尝试构建时,此代码具有相同的问题,预处理器也会看到它。

这个例子不要在类文件的头部声明属性,我在我的项目上尝试了它来尝试修复问题。

有人可以看到问题是什么?

谢谢!

2 个答案:

答案 0 :(得分:1)

我认为你想要@property(nonatomic, retain),但我不是百分之百确定。我认为你所拥有的东西都应该起作用 - 你是否尝试过干净并重拍?什么版本的Xcode?

答案 1 :(得分:1)

代码被设计为readCly,如ActorCell继承的AQGridViewCell内部所见。仅仅因为它在GitHub上并不意味着它有效。应将reuseIdentifier传递给UITableViewCell的初始化程序。这是一个例子。

//MagazineCellCode
+(MagazineCell*)cellWithReuseIdentifier:(NSString*)identifier
{
    MagazineCell *cell = [[[MagazineCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier] autorelease];
    //Any custom configuration here
    return cell;
}

//TableView Code
if (!cell) {
    cell = [MagazineCell cellWithReuseIdentifier:@"cell"];
}