编辑UITableViewCell的样式

时间:2014-10-17 13:20:13

标签: swift styles ios8 tableviewcell

我想在我的MyTableView.swift文件中添加一个新功能,但是我收到错误:

Overriding method with selector 'initWithStyle: reuseIdentifier:' has incompatible type '(UITableViewCellStyle, String) -> MyTableViewCell'

这是我想添加的代码:

init(style: UITableViewCellStyle, reuseIdentifier: String) {
super.init(style: UITableViewCellStyle.Subtitle, reuseIdentifier: reuseIdentifier) 
}

整个代码MyTableView.swift文件:

import UIKit

class MyTableViewCell: UITableViewCell {

    let medColor: UIColor = UIColor(red: 0.973, green: 0.388, blue: 0.173, alpha: 1)

    init(style: UITableViewCellStyle, reuseIdentifier: String) {
        super.init(style: UITableViewCellStyle.Subtitle, reuseIdentifier: reuseIdentifier)
    }

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
    }

    override func setSelected(selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)

        // Configure the view for the selected state
    }
}

1 个答案:

答案 0 :(得分:1)

它表示(UITableViewCellStyle, String)类型不等于(UITableViewCellStyle, String?)
如果你看一下UItableViewCell的init方法,它看起来像这样 -
init(style: UITableViewCellStyle, reuseIdentifier: String?)

<强>修正
String的chane reuseIdentifier类型转换为可选字符串String?

 override init(style: UITableViewCellStyle, reuseIdentifier: String?){
    super.init(style: UITableViewCellStyle.Subtitle, reuseIdentifier: reuseIdentifier)
}