Swift自定义UITableView没有出现在构建中

时间:2017-10-09 05:29:27

标签: ios arrays swift uitableview

我遇到的问题是,在构建应用程序时,我的自定义UITableView不会显示。

目前,我已经在我的故事板中构建了自定义表应该是什么样子,并且还创建了一个链接到UITableViewCell的可可类。

这是ViewController代码,用于处理从数组中检索输入然后将其粘贴到表中

import UIKit

struct eventStruct
{
    let eventHost : String
    let eventStatus : String
    let eventPrice : String
}

class eventsViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

    var eventArrayData = [eventStruct]()

    override func viewDidLoad() {
        super.viewDidLoad()

        eventArrayData = [eventStruct(eventHost: "Event1", eventStatus: "OPEN", eventPrice: "$5"),
                              eventStruct(eventHost: "Event2", eventStatus: "CLOSED", eventPrice: "$0")]
    }

    public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
    {
        return (eventArrayData.count)
    }

    public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
    {
        let eventCell = tableView.dequeueReusableCell(withIdentifier: "eventTemplate", for: indexPath) as! eventsTableViewCell

        eventCell.eventHost.text = eventArrayData[indexPath.row].eventHost
        eventCell.eventPrice.text = eventArrayData[indexPath.row].eventPrice
        eventCell.eventStatus.text = eventArrayData[indexPath.row].eventStatus

        return (eventCell)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

非常感谢所需的任何额外信息和/或帮助!

1 个答案:

答案 0 :(得分:2)

您尚未将代理人连接到视图控制器

您可以通过两种方式连接您的代表

1)使用viewDidLoad()功能

override func viewDidLoad() {
      super.viewDidLoad()

      yourTableVeiw.delegate = self
      yourTableView.dataSource = self
}

2)使用storyboard

只需拖放视图控制器

即可

按照下面的图片

enter image description here