Пользовательский UITableViewCell не имеет ошибки инициализатора только в одном из двух созданных классов. стриж - PullRequest
0 голосов
/ 31 марта 2019

Я добавляю новый TableVIew в проект, а также создаю собственный класс для cell. Я делаю как обычно: Новый файл / Какао Touch Class / UITableViewCell / name. Как только я начинаю добавлять свойства, я получаю ошибочные свойства теста, объявленные как !. Это не происходит в моем другом обычном классе клеток. Вы понимаете, что я делаю не так с этим новым классом?

Нет ошибок в этом классе:

import UIKit

class CalendarTableViewCell: UITableViewCell {

    @IBOutlet weak var dayLabel: UILabel!
    var cellId: String!
    var cellWeekday: Int!

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
    }
    override func prepareForReuse() {
        super.prepareForReuse()
        // Set your default background color, title color etc

    }

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

        // Configure the view for the selected state
    }

} 

и новый класс, который заставляет xCode жаловаться:

import UIKit

class ProductTableViewCell: UITableViewCell {

    @IBOutlet weak var productImageView: UIImageView!

    @IBOutlet weak var productIDLabel: UILabel!
    @IBOutlet weak var productIDInfoLabel: UILabel!

    @IBOutlet weak var categoryLabel: UILabel!
    @IBOutlet weak var categoryInfoLabel: UILabel!

    @IBOutlet weak var nameLabel: UILabel!
    @IBOutlet weak var nameInfoLabel: UILabel!

    @IBOutlet weak var priceLabel: UILabel!
    @IBOutlet weak var priceInfoLabel: UILabel!

    @IBOutlet weak var quantityLabel: UILabel!
    @IBOutlet weak var quantityInfoLabel: UILabel!


    var productImage: UIImage!
    var category: String!
    var productId: String!
    var name: String!
    var price: String
    var vendor: String!



    var cellId: Int64


    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 Ответ

1 голос
/ 31 марта 2019

Ваш var cellId: Int64 не инициализирован.В первой ячейке вы явно указали, что инициализируете его перед использованием с восклицательным знаком, но не во второй ячейке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...