检测并删除 Swift 中的空白 tableViewCell

Detect and Remove blank tableViewCell in Swift

我的 project.I 中有两个 tableView 运行 已成功在两个 tableView 之间传递数据并将其作为 tableView 数组保存到我的第二个 tableView 使用 segue.I 有另一个连接功能我的第二个 tableview 使用 tabBar 按钮。每次,当我按下 tabBar 按钮时,它都会在 indexPath:0 处创建一个空白的 tableViewCell。我能理解为什么会这样,但我不确定如何停止。我的代码如下

AppDelegate:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.

    let defaultValues = ["NewArray": [String]()]
    UserDefaults.standard.register(defaults: defaultValues)

    return true
    }

我的第二个VC

   override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    let defaults = UserDefaults.standard
    newArray = defaults.array(forKey: "NewArray") as! [String]
   // newArray.append(newItem)
    newArray.insert(newItem, at: 0)
    defaults.set(newArray, forKey: "NewArray")
    self.favTableView?.reloadData()
   }

提前致谢...

实际上最简单的解决方案是检查 newItem 是否不为空,因为如果视图是从 segue 呈现的(非空)字符串将传递给 newItem 属性.

override func viewDidLoad() {
  super.viewDidLoad()

  let defaults = UserDefaults.standard
  newArray = defaults.array(forKey: "NewArray") as! [String]
  // newArray.append(newItem)
  if !newItem.isEmpty {
    newArray.insert(newItem, at: 0)
    defaults.set(newArray, forKey: "NewArray")
  }
  self.favTableView?.reloadData()
}