如何将数据加载到表格视图中

时间:2019-07-23 08:04:01

标签: ios json swift uitableview

如何将数据加载到UITableView中?谁能帮我解决这个问题: 为什么不加载到cellForRowAt

  • pPlandDetailId ==>可选(1)
  • 驱动程序==>驱动程序名称:Boonma,Pongpat
  • carRegistrtation ==>汽车注册:60-7620
  • StoreLocation ==> [“ S.Surathani”]
  • pDepartureDateTime ==> [“ 18/01/2019 20:00”]
import UIKit

class StoreListMainViewController: UIViewController,UITableViewDelegate, UITableViewDataSource{

// TableView
    @IBOutlet weak var tableView: UITableView!
    var StoreLocation: [String] = []
    var getDepartureTime: [String] = []

    override func viewDidLoad() {
        super.viewDidLoad()
        createTableiew()
    }//Main Method

     //  TableView
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return 50
    }

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

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as? cellTableViewCell
        cell!.Location.text = StoreLocation[indexPath.row]
        cell!.DepartureTime.text = getDepartureTime[indexPath.row]
        print("cell!.Location.text ==>\(String(describing: cell!.Location.text) )")
        return cell!
    }

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let vc = storyboard?.instantiateViewController(withIdentifier: "gotoTempMonitorStoreList") as? StoreListTempMonitorViewController
        self.navigationController?.pushViewController(vc!, animated: true)
    }

   //  Create UI Table view
    func createTableiew() -> Void {
        tableView.delegate = self
        tableView.dataSource = self
    }//createTableiew
import UIKit

class cellTableViewCell: UITableViewCell {

    @IBOutlet weak var Location: UILabel!
    @IBOutlet weak var DepartureTime: UILabel!

    override func awakeFromNib() {
        super.awakeFromNib()
    }

    override func setSelected(_ selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)
    }
}

3 个答案:

答案 0 :(得分:0)

在接收数据的地方重新加载表视图tableView.reload()

答案 1 :(得分:0)

由于您没有使用UITableViewController,因此需要为tableView对象设置一个委托和一个数据源。 看起来像这样:

override func viewDidLoad() {
      tableView.dataSource = self
      tableView.delegate = self
}

就是这样。享受

答案 2 :(得分:0)

我建议您先获取数据,然后再尝试重新加载表格视图。 将数组自动设置为表格值后,只要将对象的属性编码为单元格的“出口”值,它们就会显示在表格中。