I have a bunch of arrays:
let CNSNRT = ["CNS", "NRT", 3637, 2113] as [Any]
let ADKANC = ["ADK", "ANC", 1192, 2200] as [Any]
let LAXMCE = ["LAX", "MCE", 259 , 2370] as [Any]
let ANCMCG = ["ANC", "MCG", 219, 2440] as [Any]
let ATLGLH = ["ATL", "GLH", 378, 2590] as [Any]
let CNSHKG = ["CNS", "HKG", 3450, 2728] as [Any]
let AKPFAI = ["AKP", "FAI", 253, 2960] as [Any]
let ADLKUL = ["ADL", "KUL", 3524, 2984] as [Any]
That get combined:
let routesArray = [CNSNRT, ADKANC, LAXMCE, ANCMCG, ATLGLH, CNSHKG, AKPFAI, ADLKUL]
With print(routesArray[0]) I get ["CNS", "NRT", 3637, 2113] and with print(routesArray[0][0] I get CNS, so everthing appears to be referencing correctly.
However, I can't figure out how to get this into a UITableView correctly. Basically, each item in routesArray should be a cell, and the items within the arrays will define the labels in the cells.
Current code:
import UIKit
class ViewController: UIViewController, UITableViewDataSource {
@IBOutlet weak var routesTableView: UITableView!
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return routesArray.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = routesTableView.dequeueReusableCell(withIdentifier: "cellReuseIdentifier")!
let text = "\(routesArray[indexPath.row])"
cell.textLabel?.text = text
return cell
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
routesTableView.dataSource = self
}
Yields a table with lines that look like ["CNS", "NRT", 3637, 2113] but I can't figure out how to break those down to apply them to specific labels on the cell. So for example originLabel should display CNS but in the next cell, originLabel should display ADK.