我在UISearchbar
内创建了一个UITableView
和UIPopoverController
的应用。每当我执行搜索时,表格都会正确显示所需的位置,但是当我解除弹出窗口时,自动将当前位置和所选单元格丢失。
所以情况是,我需要在弹出窗口被解除时,然后重新打电话,告诉我解雇前的确切位置。我的猜测是,当弹出窗口被解雇时,uitableview会重新加载到起始位置
注: :当我使用搜索栏执行搜索并关闭弹出窗口时出现问题,如果我不使用搜索栏并向下滚动表格视图,单击一个项目,关闭弹出窗口,然后重新打开它,我会在解雇前得到我离开的确切位置
这个小草图可以提供更多帮助:
我有什么想法可能做错了吗?
答案 0 :(得分:0)
根据我的理解,当你解雇de popover并在调用popover时重新加载它时,你正在保存UITableview
位置。如果您执行搜索UITableview
更改的位置,那么如果您保存该位置,当弹出窗口重新加载时,它将转到其他位置,因为未执行搜索。
我认为你应该是什么。在解除弹出窗口之前保存搜索。在viewDidLoad中执行搜索,然后使用UITableview
的已保存位置滚动到正确的位置。
答案 1 :(得分:0)
解决方案是我需要创建一个新的可变数组来保存新过滤的数据。如果用户搜索项目,则布尔变量将更改其值。在视图中将出现方法,将对该布尔值进行测试:如果它已更改,则应用程序将加载新创建的可变数组,否则将加载通常的数组。希望这将有助于未来的人。