【发布时间】:2015-03-19 14:27:33
【问题描述】:
我在 Apple Watch 上向 WKInterfaceTable 添加行时遇到问题。奇怪的是,无论我做什么,前 4 行都显示为空。我尝试手动并循环添加行 - 没关系。我相信我的代码很好,因为第 5 行和更多行看起来都很好。以下是发生的事情:
进一步滚动:
我的代码:
import Foundation
import WatchKit
class TableInterfaceController: WKInterfaceController{
@IBOutlet weak var agentTable: WKInterfaceTable!
let agents = ["The Dude","Walter","Donnie","Maude","Knox","Karl","Nihilist 2"]
override init(){
super.init()
loadTableData()
}
private func loadTableData(){
agentTable.setNumberOfRows(agents.count, withRowType: "AgentTableRowController")
println("Count: \(agents.count)")
for(index,agentName) in enumerate(agents){
let row = agentTable.rowControllerAtIndex(index) as AgentTableRowController
println(agentName, index)
row.agentLabel.setText(agentName)
}
}
}
任何帮助表示赞赏。这可能是一件微不足道的事情。我在 Yosemite 10.10.2 上运行 Xcode 6.2 (6C131e)
【问题讨论】:
-
AgentTableRowController中的标签是否设置为 nil 以外的值?我知道几次尝试填充表格行时,出口有时会随机设置为 nil -
如果它是 nil,应用程序会在访问 agentLabel 属性时崩溃。
-
尝试在
willActivate()方法中调用loadTableData() -
工作就像一个魅力!将其发布为答案,我会标记它。
标签: ios swift watchkit apple-watch wkinterfacetable