我创建了一个带有UITableViewCell子类的Cocoa文件,所以我可以有一个原型单元的出口。这会有用吗?
答案 0 :(得分:1)
您可以使用两个UILabel
创建自定义UITableViewCell,例如titleLabel
和detailLabel
。在自定义initWithStyle
方法中,您可以在单元格中设置所需的标签位置。
初始化自定义单元格后,您可以在自定义UITableViewCell
类中编写另一个方法来设置titleLabel
和detailLabel
的文本值,并从{{1}调用该方法}。所需的值可能来自cellForRowAtIndexPath
,您可以使用单元格行NSArray
从数组中获取相应的值。
答案 1 :(得分:1)
创建一个包含所有标签标题的数组。例如:
var titleLabels: [String] = ["Eggs", "Cheese", "Milk"]
加载自定义单元格类(将其放在viewDidLoad中):
var nib = UINib(nibName: "YourCellSubclass", bundle: nil)
tableView.registerNib(nib, forCellReuseIdentifier: "cell")
然后实现cellForRowAtIndexPath:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell
cell.detailLabel?.text = self.titleLabels[indexPath.row]
return cell
}
(确保您记得将此类设置为tableview的数据源)。
要在单元格中包含数量,您需要另一个数字数组(或者更好的是,一个对象数组,每个对象都有一个名称和数量属性)。然后(假设您的单元格有两个标签 - 一个用于标题,一个用于数量),您可以按照上面显示的相同方式在单元格上设置titleLabel和quantityLabel。
本文对创建自定义tableview单元格进行了很好的演练:https://www.weheartswift.com/swifting-around/