我有一个问题,我找不到任何信息...问题是我有一系列自定义的uinibsCustomTableViewCell。
import UIKit
class TestCell1: UITableViewCell {
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
}
在此数组中,我存储了3个uinibs,这是tableViewCells,我想在拖放并删除它们后坚持他们的重新排序。
我现在创建了一个全局数组,我所有的ViewControllers都可以访问。
class Test {
static var globalArray: [UINib] = [UINib(nibName: "ToDoCell", bundle: nil)]}
在ViewDidload下,我尝试了这样的事情:
Test.globalArray.append(test1Nib)
Test.globalArray.append(test2Nib)
Test.globalArray.append(test3Nib)
Test.globalArray.append(test4Nib)
我现在在阵列中坚持他们的命令。我尝试过领域,核心数据和用户默认面,但找不到任何解决方案。但是我想问题是他们对uinibs不满意
这些笔尖每个都代表一个单元格,并且在用户能够按照他喜欢的订单来移动单元格之后,重新打开应用程序后应该持续存在。因此,如果我做对了,我只需要坚持indexpath,但是我找不到有关此的任何有用信息...
我希望我能在这里找到帮助 - 请不要让我刚开始Swift和iOS开发,也许我尝试的一点是不可能的 - 也许您有一个快速的提示,一些教程,片段,书籍或一些想法或一些想法或一些想法或朝任何方向的东西。我愿意学习,也许我只是解释了错误会很好!多谢!
您已经发现,存储UINib
实例的数组是不可能的。这是因为这样做是没有意义的。笔尖是您视图层的实现细节。您保存的内容属于模型层,该层应独立于视图层。您应该能够获取模型层的代码,并将其放入桌面应用程序,Web应用程序甚至Android应用程序中而无需更改。当然,如果它引用了任何特定于iOS的视图类,例如UINib
。
您可以做的最简单的事情是使您的模型成为一系列字符串。这些字符串可能是您的笔尖名称。实例化表观景单元格时,这将很容易序列化,并且易于使用。