我有一个AVPlayer类,我在详细视图中使用了一个类型为Int的indexPath。
我从表视图tableViewDidSelectAtIndexPath获取indexPath,然后将其发送到要使用的详细VC。
我试着简单地将NSIndexPath转发为! NSInteger在将它发送到详细VC之前使用但它崩溃而没有崩溃消息。所以我有点担心如何解决这个问题。
有可能向下倾斜吗?如何将NSIndexPath中的数字转换为Int,以便我可以在我的课程中使用它?
答案 0 :(得分:0)
NSIndexPath
始终是部分和行(适用于UITableView
)或项的组合( UICollectionView
)。
您需要通过访问单个索引来解散该部分:
id object = [[self dataSource] objectAtIndex:[indexPath row]];
*编辑
各自的意见:你是对的。 NSIndexPath
可以使用多个索引。
如果您知道有多个索引(我在UITableViewDelegate
中不会期望的话),您可以迭代索引:
for (int i = 0; i < [indexPath length]; i++) {
NSUInteger index = [indexPath indexAtPosition:i];
// use index to access whatever you want
}
修改强>
在您下次询问之前, 请阅读文档和标题。小提示: cmd - 点击 NSIndexPath
将带您进入包含所有可能信息的头文件。
答案 1 :(得分:0)
目标C
NSInteger currentRow = indexPath.row;
<强>夫特强>
let currentRow = self.tableView.indexPathForSelectedRow().row