iOS:如何传递节中的行索引

Posted

技术标签:

【中文标题】iOS:如何传递节中的行索引【英文标题】:iOS: How to pass index of row which is in section 【发布时间】:2015-02-16 11:44:30 【问题描述】:

我有一个这样的tableview结构,

第 1 节

---->第1行

---->第2行

----> 第 3 行

第 2 节

---->第1行

---->第2行

第 3 节

---->第1行

---->第2行

----> 第 3 行

---->第4行

如何获取我必须通过的特定行的索引,就像我必须从第 3 部分获取第 2 行的索引一样?考虑我必须从第三部分传递第二行的确切地址/索引/位置。

【问题讨论】:

你想在什么时候得到它?? get index of particular row 到底是什么意思?你想为那个实例创建NSIndexPath吗? 如果我必须将行索引传递给这样的可变数组,则更简单,[courseIds objectAtIndex:indexPath.row];其中 courseIds 是我的可变数组。 【参考方案1】:

你可以创建一个 UITableViewCell 的子类,并为其添加两个属性

@property (nonatomic) NSInteger row;
@property (nonatomic) NSInteger section;

那么在cellForRowAtIndexPath:方法中可以根据索引路径设置这些值。

一旦你想传递行和部分信息,只需使用委托或 KVO

【讨论】:

【参考方案2】: indexPathForRow:inSection: 返回使用表视图中特定行和节的索引初始化的索引路径对象。

https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/NSIndexPath_UIKitAdditions/index.html#//apple_ref/occ/clm/NSIndexPath/indexPathForRow:inSection:

【讨论】:

以上是关于iOS:如何传递节中的行索引的主要内容,如果未能解决你的问题,请参考以下文章

无效更新:第 0 节中的无效行数。更新后现有节中包含的行数 (3)

如何从 UITableView 中删除一行

NSInternalInconsistencyException 原因:'无效更新:第 0 节中的行数无效'

如何使用另一个日期时间索引获取具有日期时间索引的 Pandas 数据框中的行?

tableView 编辑委托方法不起作用(无效更新:第 0 节中的行数无效)

NSInternalInconsistencyException(无效更新:第 0 节中的行数无效)