以编程方式设置NSIndexPath

时间:2012-03-22 13:22:48

标签: objective-c ios nsindexpath

我的问题是:如何以编程方式设置NSIndexPath。

例如我添加方法:

- (void)setDefaultValue{
 tempIndexPath = [NSIndexPath indexPathForRow:0 inSection:1];
}

在tableView委托 -cellForRowAtIndexPath 我想比较两个indexPath

if([indexPath isEqual:tempIndexPath])...

但是在这种情况下我的tempIndexPath = null(我想 - 因为这是autorelease对象)

在这种情况下如何设置NSIndexPath?

谢谢,全部!

3 个答案:

答案 0 :(得分:21)

添加保留

- (void)setDefaultValue{
   tempIndexPath = [[NSIndexPath indexPathForRow:0 inSection:1] retain];
}

但是你必须知道将来发布temIndexPath。

编辑:我删除了错误的选项。

答案 1 :(得分:2)

在实例化之后,只需致电retain

[tempIndexPath retain];

这将使您成为对象的所有者,因此请在完成后记住release

答案 2 :(得分:1)

你必须分配它并在之后释放它,按照你返回自动释放对象的方式定义它。