0
したがって、私はRealmデータベースを使用しています。私のTableViewは毎回新しいデータセットを返します。だから初めて、私は3つのアイテムを持っていた。 2回目は6アイテムなどです。TableViewは、アプリケーションが実行されるたびに繰り返し項目を返します。
import UIKit
import RealmSwift
class TableViewController: UITableViewController {
var ModelName = [String]()
var Power = [String]()
func addPanel() {
let realm = try! Realm()
let allPanels = realm.objects(Panel)
try! realm.write {
realm.add(Panel(model: "Hyundai", power: 260))
realm.add(Panel(model: "Honda", power: 420))
realm.add(Panel(model: "Siemens", power: 280))
}
tableView.reloadData()
for i in allPanels {
ModelName.append(i.model)
Power.append("\(i.power)")
}
}
override func viewDidLoad() {
super.viewDidLoad()
addPanel()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// MARK: - Table view data source
override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return ModelName.count //changed from 3
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell:TableViewCell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! TableViewCell
//connect NameLabel cell to the name of Model and PowerLabel cell to the power
cell.NameLabel.text = ModelName[indexPath.row]
cell.PowerLabel.text = Power [indexPath.row]
return cell
}
私は自分の行数を3に制限すると、アプリケーションが動作します。
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return ModelName.count //changed from 3
}
私は助けていただきありがとうございます。ありがとうございます