如何访问 NSIndexPath 部分值?
Posted
技术标签:
【中文标题】如何访问 NSIndexPath 部分值?【英文标题】:How to access NSIndexPath section value? 【发布时间】:2014-06-11 05:42:49 【问题描述】:我不明白为什么在下面的代码中,indexPath.section
正在重新调整一个空值。
override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell?
NSLog("Index Path %@", indexPath)
// Index Path <NSIndexPath: 0x1666d1d0> length = 2, path = 0 - 0
NSLog("Index Path Section %@", indexPath.section)
// Index Path Section (null)
在this question 之后,我还尝试了以下方法来访问部分值:
if let section = indexPath?.section
NSLog("Index Path Section %@", section)
我有一个包含 2 个部分的表格,每个部分有 1 行。在path = 0 - 0
的第一次迭代中,日志显示Index Path Section (null)
。在path = 1 - 0
程序崩溃的第二次迭代中。
我不想做任何复杂的事情,我只需要访问部分值,以便有条件地返回正确类型的单元格。
【问题讨论】:
【参考方案1】:您正在正确访问部分值。您只是以错误的方式打印它。
section
的类型为 NSInteger
,在 swift 中为 Int
只需将日志更改为NSLog("Index Path Section %d", indexPath.section)
它打印(null)
,因为该部分的值是0
。并在1
时崩溃,因为它不是有效的对象指针
【讨论】:
谢谢 - 我自己设法弄明白了。现在我遇到了将单元格出列的问题,但第一个种子中的编译器真的没有给你太多的帮助! 或者使用 print() 和 println() 方法而不是 NSLog,例如println("索引路径部分\(indexPath.section)")以上是关于如何访问 NSIndexPath 部分值?的主要内容,如果未能解决你的问题,请参考以下文章