为什么从 UITableView 中删除值时会出现 EXC_BAD_ACCESS 错误?
Why do I get an EXC_BAD_ACCESS Error when deleting values from a UITableView?
我正在创建一个应用程序,其中我将数据存储在由我创建的 class TeamsViewController
控制的视图内的 UITableView 中。我有从 table 中删除值的代码,但有时(并非总是如此),当您从 table 视图中删除值时,应用程序会崩溃。
我在 AppDelegate 的 class 声明中收到错误 Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)
:
class AppDelegate: UIResponder, UIApplicationDelegate
这是 TeamsViewController
的代码:
@IBOutlet weak var table: UITableView!
var data: [Team]()
override func viewDidLoad()
{
super.viewDidLoad()
if(table != nil)
{
self.table.delegate = self
self.table.dataSource = self
self.table.reloadData()
}
}
func tableView(tableView: UITableView!, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath!)
{
println("1234")
if (editingStyle == UITableViewCellEditingStyle.Delete)
{
data.removeAtIndex(indexPath.row)
table.reloadData()
}
}
请注意,Team
是我创建的 class。
我省略了一些table查看代码,如果需要告诉我,我会添加。
一些可能有用的更多信息是当应用程序崩溃时“1234”不会打印到控制台。
提前致谢。
我不确定这是什么错误,但根据我在 tableViews 上做的教程,他们的滑动删除功能覆盖包含以下行:
tableView.deleteRowsAtIndexPaths(indexPaths, withRowAnimation: .Automatic)
也许添加该行可以清除您的错误。
我正在创建一个应用程序,其中我将数据存储在由我创建的 class TeamsViewController
控制的视图内的 UITableView 中。我有从 table 中删除值的代码,但有时(并非总是如此),当您从 table 视图中删除值时,应用程序会崩溃。
我在 AppDelegate 的 class 声明中收到错误 Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)
:
class AppDelegate: UIResponder, UIApplicationDelegate
这是 TeamsViewController
的代码:
@IBOutlet weak var table: UITableView!
var data: [Team]()
override func viewDidLoad()
{
super.viewDidLoad()
if(table != nil)
{
self.table.delegate = self
self.table.dataSource = self
self.table.reloadData()
}
}
func tableView(tableView: UITableView!, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath!)
{
println("1234")
if (editingStyle == UITableViewCellEditingStyle.Delete)
{
data.removeAtIndex(indexPath.row)
table.reloadData()
}
}
请注意,Team
是我创建的 class。
我省略了一些table查看代码,如果需要告诉我,我会添加。
一些可能有用的更多信息是当应用程序崩溃时“1234”不会打印到控制台。
提前致谢。
我不确定这是什么错误,但根据我在 tableViews 上做的教程,他们的滑动删除功能覆盖包含以下行:
tableView.deleteRowsAtIndexPaths(indexPaths, withRowAnimation: .Automatic)
也许添加该行可以清除您的错误。