创建一个自定义类数组的变量时会出现错误



我有一个称为消息的自定义类。

import UIKit
class Message {
    var sender: String
    var message: String
    init?(sender: String, message: String) {
        self.sender = sender
        self.message = message
    }
}

我也有一个称为聊天的自定义类,该类有一个称为Messagelist的变量,这是消息类的数组。

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时,我都会遇到一个错误:"属性不能标记@nsmanman,因为它的类型无法在Objective-C中表示"或"无法声明属性。公众是因为其类型使用内部类型"。

预先感谢您,

Alex

类被声明为内部,因此您必须添加公开关键字以使其公开。

import UIKit
public class Message {
    var sender: String
    var message: String
    init?(sender: String, message: String) {
        self.sender = sender
        self.message = message
    }
}

最新更新