错误讯息:
使用ARC
禁止将“int”转换为“NSIndexPath *”
代码:
NSInteger CurrentIndex;
[self tableView:(UITableView *)horizontalTableView1 didSelectRowAtIndexPath:(NSIndexPath *)int_CurrentIndex];
如何解决此错误?
答案 0 :(得分:65)
您无法直接将int
变量投射到NSIndexPath
。但您可以从NSIndexPath
变量中生成int
。
您需要section
索引和row
索引才能生成NSIndexPath
。如果您的UITableView
只有一个section
,那么:
<强>目标C 强>
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:rowIndex inSection:0];
<强>夫特强>
let indexPath: NSIndexPath = NSIndexPath(forRow: rowIndex, inSection: 0)
Swift 4
let indexPath = IndexPath(row: rowIndex, section: 0)
答案 1 :(得分:4)
Swift 3.0
let indexPath : IndexPath = IndexPath(item: currentIndex, section: 0)