ios – 尝试删除包含拒绝辞职的第一响应者的行

ios – 尝试删除包含拒绝辞职的第一响应者的行,第1张

概述我有一个基于iOS 6的项目,实现了一个UITableView.表视图中的每个单元格都包含一个允许用户输入信息的UITextField.如果用户清除文本字段,或者删除字段中的所有输入(即[textfield length] == 0),当他们点击另一个单元格(文本字段)时,它会从表格视图中删除前一个单元格(文本字段),因为它是空的 – 这避免了在表视图中累积的空单元格. 这都是使用名为-textF 我有一个基于iOS 6的项目,实现了一个UItableVIEw.表视图中的每个单元格都包含一个允许用户输入信息的UITextFIEld.如果用户清除文本字段,或者删除字段中的所有输入(即[textfIEld length] == 0),当他们点击另一个单元格(文本字段)时,它会从表格视图中删除前一个单元格(文本字段),因为它是空的 – 这避免了在表视图中累积的空单元格.

这都是使用名为-textFIEldEditingDIDEnd的方法完成的:它在文本字段的UIControlEventEditingDIDEnd事件上触发:

- (voID)textFIEldEditingDIDEnd:(UITextFIEld *)textFIEld {    NSIndexPath *indexPath = // Index path of the row in the table vIEw    if ([textFIEld.text length] == 0) {        // Delete the cell from the table vIEw        [self.tableVIEw deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UItableVIEwRowAnimationautomatic];    }}

但是,当代码被触发时,应用程序在控制台上崩溃并显示以下消息:

***由于未捕获的异常’NSInternalinconsistencyException’而终止应用程序,原因:’尝试删除包含拒绝辞职的第一响应者的行’

我之前从未见过这个消息,在搜索网页时似乎没有特别多的引用.我将不胜感激任何有关如何解决此问题的建议.

解决方法 我之前从未见过这个消息,但如果我看到它的话,我的直接冲动是:尝试延迟性能.即使像这样简单的事情也许是一个有趣的实验:

dispatch_async(dispatch_get_main_queue(),^{    [self.tableVIEw deleteRowsAtIndexPaths:@[indexPath]      withRowAnimation:UItableVIEwRowAnimationautomatic];});

我的想法是,在文本字段仍在报告时(即textFIEldEditingDIDEnd仍然在运行时),我们不要尝试删除该行;让我们给runloop一个机会来完成它的循环.

总结

以上是内存溢出为你收集整理的ios – 尝试删除包含拒绝辞职的第一响应者的行全部内容,希望文章能够帮你解决ios – 尝试删除包含拒绝辞职的第一响应者的行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1078513.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存