ios - 从一个视图控制器移动到另一个视图控制器时如何保存表格视图数据?
问题描述
从一个视图控制器移动到另一个视图控制器时如何在表格视图中保存数据
当我退出应用程序或从视图控制器移动到视图控制器时,我试图让单元格保持不变但仍然没有运气
旁注:我的 CartVC 中的单元格是从另一个视图控制器填充的,当在视图控制器中选择一个项目时,它被传递到 CartVC 以填充单元格,每次我从一个 VC 移动到另一个(或关闭应用程序) CartVC 中的数据消失了如何将数据保存在 CartVC 中
class CartViewController: UIViewController, UITableViewDelegate, UITableViewDataSource{
var selectedProduct: Items!
var cart: [Cart] = []
var groupedCartItems: [String: [Cart]] = [:]
var brands: [String] = []
@IBOutlet weak var cartTableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
groupedCartItems = Dictionary(grouping: cart, by: {$0.cart.dispensaryName})
dispensarySectionTitle = groupedCartItems.map{$0.key}.sorted()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(true)
masterCartTableView.reloadData()
}
func numberOfSections(in tableView: UITableView) -> Int {
return brands.count
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let brand = brands[section]
return groupedCartItems[brand]!.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cartCell = tableView.dequeueReusableCell(withIdentifier: "CartCell") as! CartCell
let brand = brands[indexPath.section]
let itemsToDisplay = groupedCartItems[brands]![indexPath.row]
cartCell.configure(withCartItems: itemsToDisplay.cart)
return cartCell
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let cartHeader = tableView.dequeueReusableCell(withIdentifier: "CartHeader") as! CartHeader
let headerTitle = brands[section]
cartHeader.brandName.text = "Store: \(headerTitle)"
return cartHeader
}
}
解决方案
保存您的数组如下:
let yourArray : [Any] = [] //Change your array type according to your requirement
UserDefaults.standard.setValue(yourArray, forKey: "your_key")
并得到你的数组如下:
UserDefaults.standard.value(forKey: "your_key") //Get your array type according to you've saved before
推荐阅读
- html - 减少超链接中文本和下划线之间的间距
- python - python有项目知识阅读器模块吗?
- javascript - ReactDOM 没有显示
- javascript - React TypeError:this.state.List.map 不是函数
- c - C中的排序和动态分配单链表
- python - /users/login/ __init__() 的 TypeError 采用 1 个位置参数,但给出了 2 个
- node.js - 如何显示 child_process 标准输出的“实时”显示
- docker - 为 micronaut 应用程序构建原生镜像
- javascript - 如何在我的反应本机应用程序中通过api制作paytm的支付链接而不添加服务器
- javascript - MongoDB,NodeJS。从承诺中获取元素