为什么我的 tableView 函数 运行 三次?

Why does my tableView function run three times?

我有一个 UITableView 并且我有执行它所需的方法之一:

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    println("section is \(section)")
    println(self.items.count) // self.items.count = 3
    return self.items.count
}

在我的日志中,我看到该方法 运行 3 次:

section is 0
3
section is 0
3
section is 0
3

编辑:

这是我的部分的片段:

func numberOfSectionsInTableView(tableView:UITableView!)->Int
{
    return 1
}

我的线程堆栈图片:http://i.imgur.com/90dakCu.png

在 UITableView 中,有很多情况,由于 tableview 的自动刷新之类的原因,不同的委托方法将被多次调用。

Check this answer for more informations.