Array of UITableViews



我正在尝试创建一个类似slack的应用程序,用户可以创建频道,每个频道包含不同的聊天。我首先创建一个聊天数组,并使用Parse保存和加载它们。现在我有了基础,我正在尝试创建通道。我遇到了麻烦,因为似乎我可以创建2个类(1为聊天,1为频道),并有频道是聊天的数组(这是一个字符串数组)。然而,当我尝试创建聊天数组时,我得到一个错误,说

实例成员'chats'不能用于类型'ChannelsTVC'

<

MOBChatTVC类/strong>

class MOBChatTVC: UITableViewController {
    var chatArray = [String]() {
        didSet {
            tableView?.reloadData()
        }
    }
<

ChannelsTVC类/strong>

class ChannelsTVC: UITableViewController {
    var chats = MOBChatTVC().chatArray
    var channels = [chats]() {
        didSet {
            tableView?.reloadData()
        }
    }

编辑

有人帮我解决了这个错误。现在…我的新问题…

我如何创建一个数组的chatArrays?

发生错误,因为编译器期望您传递Object类型而不是变量本身,例如

var channels = [String]()  {
    didSet {
        tableView?.reloadData()
    }
}

你的设计也有问题:你在ChannelsTVC中创建MOBChatTVC的新实例来访问属性chatArray,因为MOBChatTVC扩展了UITableViewController,它在MOBChatTVC中的目的更加不清楚。无论哪种方式,您都可能希望创建ChannelsTVC的新实例并访问其属性和方法,如下所示

     class ChannelsTVC: UITableViewController {            
       var channels = [String]() {
       didSet {
        tableView?.reloadData()
       }
      } // channels
      var myMobChatTVC = MOBChatTVC()
      override func viewDidLoad() {
      super.viewDidLoad()
      channels = myMobChatTVC.chatArray
     } // viewDidLoad
  } // ChannelsTVC

最新更新