Я пытаюсь создать массив UITableViewCells, и до того, как я добавлю ячейки, мне нужно инициализировать их параметрами. Когда я пытаюсь инициализировать ячейку, я получаю сообщение об ошибке, что два свойства в классе никогда не были определены. Но после того, как я определил их, я получаю сообщение об ошибке, которое использовались перед инициализацией. Вот классИнициализация пользовательского UITableViewCell с параметрами
class SimpleCellClassTableViewCell: UITableViewCell {
@IBOutlet var artist: UILabel!
@IBOutlet var picture: UIImageView!
@IBOutlet var songTitle: UILabel!
@IBOutlet var sender: UILabel!
var audioFile: AnyObject? = nil
var mediaType: songType! = nil
var id: NSNumber! = nil
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
func configureCell(Title title: NSString?,
File audioFile: AnyObject?,
Type mediaType: songType,
Artist artist: NSString?,
Image image: UIImage?,
Sender sender: NSString?,
ID id: NSNumber?) -> UITableViewCell {
self.audioFile = audioFile
self.mediaType = mediaType
if let newSender = sender{
self.sender.text = newSender as String
}
if let newTitle = title{
self.songTitle.text = newTitle as String
}
if let newImage = image {
self.picture.image = newImage
}
if let newArtist = artist {
self.artist.text = newArtist as String
}
if let newId = id {
self.id = newId as NSNumber
}
return self
}
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
И это где Im пытается инициализировать, а затем добавить значение к нему с помощью метода конфигурирования ячейки:
let newSongCell = SimpleCellClassTableViewCell.init(style: .Default, reuseIdentifier: "SimpleCell")
newSongCell.configureCell(Title: setTitle,
File: setAudioFile,
Type: setMediaType,
Artist: setArtist,
Image: setImage,
Sender: setSender,
ID: setId)
Параметров для файла и типа являются те, метанием той же ошибки , Также, если мне нужно использовать инициализатор с NSCoder, что я должен поставить в качестве аргумента?
var носитель информацииType: songType! = nil // Проверьте эту строку кода .. измените на var mediaType: songType? = nil – Bharath