1
クラスから単純なテーブルビューを生成しようとしています。私がセルを "A"にすると、すべてのセルにAの文字が表示されますが、この現在のコード出力では空白のテーブルが表示されます。私は間違って何をしていますか?申し訳ありませんが自己学習初心者ここに。テーブルビューセルにクラスのテキストが表示されない
import UIKit
class LinesViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var linesTableView: UITableView!
let cellID = "cell"
let lines = ["brown","red","blue"]
class Train {
var color: String = ""
var line: String = ""
init (color:String?, line:String?){
}
}
let brownLine = Train(color: "brown", line: "Brown Line")
let redLine = Train(color: "red", line: "Red Line")
let blueLine = Train(color: "blue", line: "Blue Line")
var trains: [Train] = []
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
linesTableView.delegate = self
linesTableView.dataSource = self
trains = [brownLine,redLine,blueLine]
//print (trains[1].line)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return lines.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = linesTableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath)
let train = trains[indexPath.row]
cell.textLabel?.text = train.line
return cell
}
'Train'イニシャライザで値を割り当てるのを忘れてしまったので、まだ空文字列です。 –
最初のビジュアルをテストするために固定テキストを置いてみましたか?これを変更してください:cell.textLabel?.text = train.line for this:cell.textLabel?.text = "Hello"また、クラスを正しく初期化していません。 –