【发布时间】:2012-01-26 08:51:46
【问题描述】:
我有一个通常可以使用的搜索栏。当我在 iPhone 上测试时,问题出现了,自动更正开始了。我设置了搜索栏,如果查询栏中的文本长度 > 4,那么它开始将内容放入 searchResults 数组。如果有来自自动更正的建议并且我忽略它并从数组中选择某些内容,则应用程序崩溃。我将错误追溯到这样一个事实,即在选择行之前选择了自动更正的单词(但都完成了),所以我认为我正在访问的 searchResults 数组不再有效。
例如,我在搜索栏中输入了“demp”。自动更正建议“演示”。同时,搜索返回一堆带有“dempster”的结果。我选择第一个。当我这样做时,搜索在“演示”下重新搜索并清除原始数组(请记住,我在服务器上查找搜索,因此数组没有重新填充)。然后 didSelectRowAtIndexRow 方法触发,数组中没有任何内容,它崩溃了。
有什么想法吗?提前致谢。
【问题讨论】:
-
我遇到了同样的问题。我会说这是 UISearchBar 中的一个错误。
标签: objective-c uisearchbar didselectrowatindexpath autocorrect