前提・実現したいこと
アプリに日記のような機能を付けています。
tableViewのセルは追加すると、普通は新しいものが下に足されていくと思うのですが
新しいものを上に保存したいです。
サイト等で参考にしたコードはタイトルだけ新しい順になり、セルをタップすると内容は古い順になていたりしてしまいました。。。。
該当のソースコード
このコードに書こうとしています。
現在はそのまま新しいものが下に来るようになっています。
どこを変えればいいでしょうか。。
import UIKit import RealmSwift class nippouitiranViewController: UIViewController,UITableViewDataSource,UITextFieldDelegate,UITableViewDelegate { @IBOutlet var Ntable: UITableView! var nippouItems: Results<Nippou>! override func viewDidLoad() { super.viewDidLoad() Ntable.dataSource = self let realm = try! Realm() //箱に実体を入れている nippouItems = realm.objects(Nippou.self) Ntable.reloadData() Ntable.delegate = self //空のセルの区切り線を消す処理 Ntable.tableFooterView = UIView() //ナビバーのタイトルを大きくする(スクロール時は小さくなる) navigationController?.navigationBar.prefersLargeTitles = true } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) Ntable.dataSource = self let realm = try! Realm() nippouItems = realm.objects(Nippou.self) Ntable.reloadData() } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let Ncell = tableView.dequeueReusableCell(withIdentifier: "Ncell", for: indexPath) let object = nippouItems[indexPath.row] Ncell.textLabel?.text = object.Ntitle Ncell.textLabel?.font = UIFont(name: "Arial-BoldMT", size: 16) return Ncell } func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) { if editingStyle == .delete { deleteTodo(at:indexPath.row) Ntable.reloadData() } } var todotoday: ItemBox? var NreceiveitemBox: Nippou? func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { tableView.deselectRow(at: indexPath, animated: true) NreceiveitemBox = nippouItems[indexPath.row] self.performSegue(withIdentifier: "todetailnippou", sender: nil) } override func prepare(for segue: UIStoryboardSegue, sender: Any?) { if segue.identifier == "todetailnippou" { let detailnippouViewController:detailnippouViewController = segue.destination as! detailnippouViewController detailnippouViewController.nippou = NreceiveitemBox! } } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return nippouItems.count } func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return 50 } func deleteTodo(at index: Int) { let realm = try! Realm() try! realm.write { realm.delete(nippouItems[index]) } } }
よろしくお願いいたします。
あなたの回答
tips
プレビュー