Iphone 无法在表视图上显示任何内容
这是我的历史视图,我在视图控制器中有一个tableview。但由于某些原因,我无法输出任何内容,我试图对其进行硬编码,但它根本不显示任何内容。我知道的一件事是,我需要使tableView函数重写,如果我这样做,我会得到错误Iphone 无法在表视图上显示任何内容,iphone,swift,uikit,overriding,tableview,Iphone,Swift,Uikit,Overriding,Tableview,这是我的历史视图,我在视图控制器中有一个tableview。但由于某些原因,我无法输出任何内容,我试图对其进行硬编码,但它根本不显示任何内容。我知道的一件事是,我需要使tableView函数重写,如果我这样做,我会得到错误 import UIKit class History: UIViewController, UITableViewDataSource, UITableViewDelegate { @IBOutlet var tableView: UITabl
import UIKit
class History: UIViewController, UITableViewDataSource, UITableViewDelegate
{
@IBOutlet var tableView: UITableView!
override func viewDidLoad()
{
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
self.view.backgroundColor = UIColor(patternImage: UIImage(named: "newBackground.jpg")!)
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier("historyCell", forIndexPath: indexPath) as! historyCell
cell.durationLabel.text = "98"
return cell
}
override func viewWillAppear(animated: Bool)
{
super.viewWillAppear(animated)
}
}
这是我的细胞原型课程,我确保标识符也是“historyCell”
您是如何将原型单元的控件连接到historyCell类中的IBOutlet的?我不知道当您不使用UITableviewController时这是可能的。我一直在用标签
除非有我不知道的新内容,否则您对cell.durationLabel.text的赋值应该会导致零展开(这是您得到的错误吗?覆盖时会出现哪个错误?是的,这是我以前得到的错误,我会遇到零展开。我想我现在可以显示了,但它只在我旋转屏幕后显示我的标签,奇怪。。。你说我是如何连接它的@IBOutlet var durationLabel:UILabel!你刚刚证实了我在读你的问题时的怀疑。当我开始使用UITableView时,访问自定义单元格控件的唯一方法是通过findViewWithTag。在3个版本的XCode之后,我再也没有找到更好的方法。你让我意识到有一种方法可以以某种方式将表视图单元格连接到IBOutlet。我会检查一下,可能会删除很多代码。我喜欢消除代码。谢谢。当您旋转屏幕时,会重新绘制,并且可能会重新调用cellForRowAtIndexPath。是否检查了在视图最初出现时是否至少调用了一次cellForRowAtIndexPath?如果不调用它,这意味着表视图认为设计时的原型单元是可用的(这确实很奇怪)。如果它被调用,那么我需要在UITableViewCells中完成关于IBOutlets的作业,然后才能假装有帮助。我的tableView是在我们仍然需要显式调用tableView.reload()时编程的(现在设置委托应该可以处理所有事情)。也许在某些情况下仍然需要调用.reload()。我建议这样做。至少它应该强制tableview重新绘制单元格。我也很困惑。最后一件事。您为视图设置的背景颜色是否可能太暗,以至于您无法看到实际正确显示的单元格内容?
public class historyCell: UITableViewCell{
@IBOutlet var durationLabel: UILabel!
@IBOutlet var kicksLabel: UILabel!
}