我有一个名为Message的自定义类。
import UIKit
class Message {
var sender: String
var message: String
init?(sender: String, message: String) {
self.sender = sender
self.message = message
}
}
我还有一个名为Chat的自定义类,它有一个名为messageList的变量,它是Message类的数组。
class Chat {
//MARK: Properties
var name: String
var image: UIImage?
var animal: String
var messageList = [Message]()
//MARK: Initialisation
init?(name: String, image: UIImage?, animal: String) {
if name.isEmpty || animal.isEmpty {
return nil
}
self.name = name
self.image = image
self.animal = animal
let firstMessage = Message(sender: "animal", message: "Hi! Nice meeting you!")
self.messageList.append(firstMessage)
}
}
我尝试了很多不同的方法,但是每次声明messageList时都会出现错误:“属性不能标记为@NSManaged,因为它的类型不能用Objective-C表示”或“属性不能声明public,因为它的类型使用内部类型“。
提前谢谢你,
亚历
答案 0 :(得分:1)
默认情况下,类被声明为内部,因此您必须添加public关键字以使其公开。
import UIKit
public class Message {
var sender: String
var message: String
init?(sender: String, message: String) {
self.sender = sender
self.message = message
}
}