如何从NSIndexPath获取特定值

时间:2011-05-07 02:17:53

标签: objective-c uitableview nsarray nsinteger nsindexpath

我有一个带有NSIndexPaths的NSArray

NSArray *array = [self.tableView indexPathsForSelectedRows];

for (int i = 0; i < [array count]; i++) {
    NSLog(@"%@",[array objectAtIndex:i]);
}

NSLog返回:

<NSIndexPath 0x5772fc0> 2 indexes [0, 0]
<NSIndexPath 0x577cfa0> 2 indexes [0, 1]
<NSIndexPath 0x577dfa0> 2 indexes [0, 2]

我试图将indexPath中的第二个值转换为普通的NSInteger

1 个答案:

答案 0 :(得分:10)

您可以使用NSIndexPath的{​​{1}}方法获取最后一个索引:

-indexAtPosition:

在你的情况下,你可以使用以下内容(正如Josh在他的评论中提到的,我假设你正在使用NSIndexPath *path = ...; // Initialize the path. NSUInteger lastIndex = [path indexAtPosition:[path length] - 1]; // Gets you the '2' in [0, 2] 的自定义子类,因为它没有那个特定的方法({ {1}})):

UITableView

这将打印出-indexPathsForSelectedRows: