gpt4 book ai didi

ios - 静态 TableView 获取 NSRangeException

转载 作者:行者123 更新时间:2023-11-28 07:56:46 26 4
gpt4 key购买 nike

我有一个带有静态单元格的 UITableViewController,当我运行该应用程序并单击指向它的按钮时,我在 AppDelegate 中收到一个 SIGABRT 信号。

我试图找到未使用的 socket ,但没有用。

这是控制台日志:

Console Log

UITableViewController 代码:

import UIKit
import os.log

class SettingsTableViewController: UITableViewController {

// MARK: Properties
@IBOutlet weak var noteDisplayKindSwitch: UISwitch!

override func viewDidLoad() {
super.viewDidLoad()

notedisplayKindSwitch.setOn(Settings._displaynotesAsNames, animated: false)
}

@IBAction func ChangeNoteDisplayKind(_ sender: UISwitch) {
Settings._displayNotesAsNames = sender.isOn

// MARK: - Table view data source

override func numberOfSections(in tableView: UITableView) -> Int {
return 2
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 3
}
}

Storyboard中的 UITableViewController:

The UITableViewController in the Storyboard

连接:

The Connections

我做错了什么?谢谢。

最佳答案

您正在使用静态单元格。没有理由实现 numberOfSectionsnumberOfRowsInSection,因为它们是由 Storyboard 中的静态布局指定的。

因为你已经实现了:

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 3
}

您告诉 iOS 每个部分都有 3 行,这是一个谎言。因此 iOS 尝试访问第一部分的第二行并因数组索引超出范围而崩溃,因为该部分只有 1 行。

因此,删除 numberOfSectionsnumberOfRowsInSection 的实现,您就可以开始了。

关于ios - 静态 TableView 获取 NSRangeException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47855452/

26 4 0
文章推荐: html - - 高度属性不工作,除了静态值