创建Cocoa文件

时间:2015-06-22 20:20:19

标签: ios xcode swift

我创建了一个带有UITableViewCell子类的Cocoa文件,所以我可以有一个原型单元的出口。这会有用吗?

2 个答案:

答案 0 :(得分:1)

您可以使用两个UILabel创建自定义UITableViewCell,例如titleLabeldetailLabel。在自定义initWithStyle方法中,您可以在单元格中设置所需的标签位置。

初始化自定义单元格后,您可以在自定义UITableViewCell类中编写另一个方法来设置titleLabeldetailLabel的文本值,并从{{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/