Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 344 - カスタムTableViewをコードから パート4

Swiftで遊ぼう!の古い記事-> Life-LOG OtherSide
質問 : Swiftで遊ぼう! - 252 - FaceViewプロジェクト始動 - Swiftで遊ぼう! on Hatena

最後にまだ理解をしていないrequired init()メソッド

required init(coder aDecoder: NSCoder){
 fatalError("init(coder:) has not been implemented")
}

このメソッドの理由がわかる頃はかなりiOSデベロップメントの理解が進んでいるのだろうか...
今日の記事を振り返ってしょうも無いことで悩んでいたなと思いたいです。

最終的にNameAndColorCellクラスは次のようになります。

class NameAndColorCell: UITableViewCell {
 var name: String = " " {
     didSet {
         if name != oldValue {
            nameLabel.text = name
        }
     }
 }
 var color: String = " " {
     didSet {
         if color != oldValue {
             colorLabel.text = color
         }
     }
 }
 var nameLabel: UILabel!
 var colorLabel: UILabel!
    
 override init(style: UITableViewCellStyle,
  reuseIdentifier: String?) {
   super.init(style: style, reuseIdentifier: reuseIdentifier)
        
    let nameLabelRect = CGRectMake(0, 5, 70, 15)
    let nameMarker = UILabel(frame: nameLabelRect)
    nameMarker.textAlignment = NSTextAlignment.Right
    nameMarker.text = "Name:"
    nameMarker.font = UIFont.boldSystemFontOfSize(12)
    contentView.addSubview(nameMarker)
        
    let colorLabelRect = CGRectMake(0, 26, 70, 15)
    let colorMarker = UILabel(frame: colorLabelRect)
    colorMarker.textAlignment = NSTextAlignment.Right
    colorMarker.text = "Color:"
    colorMarker.font = UIFont.boldSystemFontOfSize(12)
    contentView.addSubview(colorMarker)
        
    let nameValueRect = CGRectMake(80, 5, 200, 15)
    nameLabel = UILabel(frame: nameValueRect)
    contentView.addSubview(nameLabel)
        
    let colorVlaueRect = CGRectMake(80, 25, 200, 15)
    colorLabel = UILabel(frame: colorVlaueRect)
    contentView.addSubview(colorLabel)
 }
    
 required init(coder aDecoder: NSCoder){
    fatalError("init(coder:) has not been implemented")
 }

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

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

 }

}