搜索方法迭代完成后重新加载/显示 UISearchDisplayController 的 searchResultsTableView

2024-01-07

我修改了Apple的示例iOS项目的代码表格搜索 http://developer.apple.com/library/ios/samplecode/TableSearch/Introduction/Intro.html以便通过解析 Web 服务的内容来使用它来搜索 Web 服务。我所实现的一切都工作正常,除了使用 SearchDisplayController 的 SearchBar 执行搜索时的一个丑陋的细节。我更改了 SearchDisplayController 的行为,使其在点击“搜索”按钮时首先调用我的搜索函数。

问题是,当搜索迭代(在 NSOperationQueue 的后台执行)完成时,“searchResultsTableView”(searchDisplayController 的)不会自动显示或不会分配结果内容。如果您随后更改搜索栏的文本或在触摸搜索字段时出现的视图中点击“取消”按钮(请参阅 TableSearch),则正确的 TableView 将与搜索结果一起出现。我只是想在搜索操作完成后立即执行此步骤,以便在交互之前执行。在此阶段,当前显示“无结果”标签。方法“filterContentForSearchText”和“shouldReloadTableForSearchString”与原始 TableSearch 项目相比没有变化。

我已经查看了 SearchDisplayController 的不同类引用及其属性,但我还找不到任何最终的解决方案。

我在 NSOperation 完成后肯定会迭代的部分中尝试了以下内容,但它似乎没有解决问题。

[self.searchDisplayController.searchResultsTableView removeFromSuperview];

and

self.searchDisplayController.searchResultsTableView.hidden = YES;

这些操作都有我想要显示的正确视图,但滚动被禁用,直到您更改状态以便再次隐藏视图。不过,可以选择 TableView 单元格。我基本上只想启用滚动功能......

预先感谢您的努力!


我有同样的问题,我刚刚解决了。我遇到了完全相同的问题,我想禁用即时搜索,当我点击搜索按钮时,表格未加载,但当我单击取消时,它会加载。如果我在搜索后未加载正确结果的表视图上滚动,则会因索引超出范围而崩溃。

您需要做的是重新加载 searchResultTableView 而不是当前的 tableview。按搜索词过滤数据后,输入

[self.searchDisplayController.searchResultsTableView reloadData]

重新加载您的搜索结果,它会在您点击搜索按钮后显示。 希望这有帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

搜索方法迭代完成后重新加载/显示 UISearchDisplayController 的 searchResultsTableView 的相关文章

  • Flipboard 动画

    有谁知道如何构建像 Flipboard 应用程序一样的翻转动画 谢谢 如果你指的是翻页过渡 请查看我编写的 OpenGL 过渡类 https github com epatel EPGLTransitionView https github
  • iOS 低内存崩溃,但内存使用率非常低

    这已经困扰我很长时间了 我的应用程序运行占用大约 2 74MB 内存 没关系 但当它创建 UIWebView 时 它会增加到大约 5 87MB 并继续崩溃 这些是在我的第一代 iPad 上运行时仪器中的实时字节下给出的值 我找不到崩溃日志
  • iOS 5 UIView drawRect 覆盖在设备上不起作用

    我正在准备在 iOS 5 GM 上发布我的 iPhone 应用程序 并遇到了 UIView 的错误 当我在子类上重写 drawRect 方法时 模拟器会显示所需的结果 但当我尝试在实际设备上测试时 drawRect 重写根本没有任何效果 我
  • iPhone:每日本地通知

    我正在尝试实现本地通知 这就是我所设置的 Current date NSDate date NSDate date Add one minute to the current time NSDate dateToFire date date
  • 如何本地化 iOS 故事板

    我有一个包含一些视图的 iPhone 故事板 例如 导航项标题名为News 应翻译为其他语言 当我向故事板添加新的本地化版本时 它会为新语言创建当前故事板的副本 在这里我可以更改导航项的标题 但对我来说它似乎不太有用 如果我的故事板包含 1
  • Xcode - 发布和分发配置中的 Malloc_Error

    仅当我在设备上选择发布或分发配置时 我才会收到此错误 在模拟器上它运行良好 请问 我错在哪里 cc1obj 4113 malloc mmap size 429379584 failed error code 12 error can t a
  • 如何在导航栏上添加 UIView?

    我需要覆盖UINavigationBar with UIView像这儿 除了使用带有按钮返回的自定义 UIView 作为导航栏之外 还有其他方法可以做到这一点吗 您可以将子视图添加到应用程序的基本视图 UIApplication share
  • iPhone 的翻译器?

    我对为 iPhone 制作一个解释器很感兴趣 这将是一个实验性的想法 但可能会很棒 我喜欢让我自 己的语言适合移动计算和数学的想法 我查阅了很多资料 发现有关 iPhone 上的口译员的信息很复杂 苹果会允许什么 我见过这个应用程序 这是一
  • 从设备获取联系人列表时出现问题

    这段代码有什么问题 NSMutableArray contactArray NSMutableArray alloc init ABAddressBookRef addressBook ABAddressBookCreate CFArray
  • 加速度计适用于 iphone/ipad 模拟器吗?

    据我所知 当我在 XCode 中使用 iPad 模拟器时 我的应用程序应该会触发加速计事件 但事实并非如此 我用谷歌搜索了一下 似乎加速度计没有在模拟器中实现 这是正确的吗 如果是这样 为什么他们会有 硬件 gt 摇动手势 菜单选项 我的代
  • UIAlertView 每次调用都会弹出三次,而不是一次

    我在程序的两个不同部分中从 NSAlert 中得到了奇怪的行为 行为是 出现警报 然后自发地消失 警报重新出现 然后一直保留 直到用户解除 即正常行为 警报再次出现 此行为仅在第一次调用显示警报的方法时发生 第一次之后 它的行为就正常了 以
  • 日期时间到 NSDate

    如何转换字符串2010 11 19T20 00 00Z进入一个NSDate object 我尝试过使用 dateFormatter setDateFormat yyyy MM ddTHH mm ssZ 但看起来我的自定义格式样式错误 PS
  • Grand Central Dispatch (GCD) 调度源标志

    我最近不再使用 to GCD 调度来源 https developer apple com documentation dispatch 1385630 dispatch source create监视文件更改 效果很好 API 也变得更加
  • iOS - 在相机上放置自定义叠加层(垂直对齐)。顶部黑条的大小

    我正在寻找以下问题的编程解决方案 我想在相机 iOS 上绘制自定义叠加层 我希望它位于相机输出视图的垂直中央 我已经完成了相对于屏幕而不是相机图片居中绘制自定义视图 为此 我需要获得顶部黑条的大小 我怎么才能得到它 顶部和底部栏的大小不相等
  • 使用标识符启动 iPhone 应用程序

    我正在尝试在我的应用程序中启动应用程序 例如 如果我按下 testApp1 中的按钮 它应该打开 testApp2 有没有办法用应用程序标识符来做到这一点 我听说过一种名为的未记录方法launchApplicationWithIdentif
  • 使用 Dirac 在 iPhone 中进行实时音高变化 [重复]

    这个问题在这里已经有答案了 可能的重复 iPhone 上的实时音调变换 https stackoverflow com questions 1100495 real time pitch shifting on the iphone 我已经
  • 如何将nsmutable数组添加到sqlite数据库表中

    如何将nsmutablearray添加到sqlite数据库表中 有人可以帮我编码吗 您可以使用 for int i 0 i lt mutArray count i NSString string mutArray objectAtIndex
  • 使用ios sdk在youtube上上传视频的方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何从 iOS 应用程序中将视频上传到 YouTube https stackoverflow com questions 3528568 how do i upload a video to you
  • 如何检测 UITableView 中某个单元格的双击?

    如何检测某个单元格上的双击UITableView i e 如果用户进行了一次触摸 我想执行一个操作 如果用户进行了两次触摸 我想执行另一个操作 我还需要知道进行触摸的索引路径 我怎样才能实现这个目标 Thanks 如果您不想创建子类UITa
  • dispatch_semaphore_t 重用 - 我在这里缺少什么?

    我有一些代码 其中使用dispatch semaphore t 来表示操作完成 当信号量是成员变量时 它的行为似乎不正确 我将展示有效的示例代码和似乎无效的示例代码 implementation someClass dispatch sem

随机推荐

  • 在matlab中通过非整数移位来移动向量的元素

    我想通过非整数移位来移位向量 线性插值似乎不是很准确 所以我尝试使用sinc通过以下使用傅立叶变换的代码进行插值 function y fshift x s FSHIFT Fractional circular shift Syntax g
  • 我可以在与其他页面(例如 wordpress)相同的 url 中创建 Flask Web 应用程序吗?

    我有一个自托管服务器 仅适用于我的局域网 带有 Wordpress miservidor com 和 Owncloud miservidor com owncloud 页面 这些页面工作完美 我最近决定在同一目录下使用 Flask 创建一个
  • 绑定到 ListView 的 SelectedItem 属性时设置初始选定项

    我有一个 Xamarin Forms xaml 页面 其中使用 ListView 允许用户从列表中选择单个项目 我已将 ListView 的 SelectedItem 属性绑定到 ViewModel 上的属性 效果很好 一旦用户更改所选项目
  • 桶排序的复杂度怎么会是O(n+k)呢?

    在说 这个问题以前有人问过 或者 找一本算法书 之前 请继续阅读并告诉我我的推理的哪一部分出了问题 假设你有 n 个整数 并将它们分成 k 个容器 这将花费 O n 时间 然而 需要对 k 个 bin 中的每一个进行排序 如果对每个 bin
  • XCUITest:以协调的方式跨两个应用程序运行测试

    我正在考虑使用 XCUITest 为我的 iOS 应用程序进行 UI 测试 看起来 XCUITest 具有广泛的功能 包括使用多个应用程序的能力 然而 多应用程序支持似乎有些有限 似乎使用 XCUIApplication 我可以使用 Bun
  • 如何在同一个Java流中正确提交和获取多个Futures?

    我尝试提交并获得 10Futures 在同一个流中 每个都需要 1 秒来处理 我想并行运行它们 我的第一次尝试是takes 10 sec 它按顺序运行 需要 10 秒 我的第二次尝试是takes 1 sec 并行运行 耗时 1 秒 然而它使
  • 如何使用 NEST 客户端将 Elasticsearch 配置为使用 AutoMap 类型作为动态映射对象的默认模板?

    我动态地将对象添加到索引中 因此它们都使用 default 映射进行索引 这是有问题的 因为它会导致诸如Guid被映射为text字段而不是作为keyword The AutoMap https www elastic co guide en
  • JavaScript 中的 360 度旋转视图 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 我如何获得每个工作的詹金斯许可?

    有些工作推向质量检查 有些工作推向生产 只应允许开发人员推送到 QA 并且只应允许 QA 推送到生产 除了创建两个独立的构建服务器 通过某种方式共享工件 之外 我如何限制权限 你需要基于项目的矩阵授权策略在全局配置和作业配置中 使用启用基于
  • Flask SQLAlchemy 对关系中的对象进行分页

    所以我有两个模型 文章和标签 以及正确设置的 m2m 关系 我有一条 文章 标签 类型的路线 我想仅显示与该标签相关的那些文章 我已经解决了这个问题 但我正在寻找更优雅的解决方案 包括分页但我无法使用paginate在文章列表上 因为它不是
  • 条件构造在 Python 正则表达式中不起作用

    我是 python 的新手 我想在中使用我的正则表达式re sub 我试穿了regex101 https regex101 com r InljCc 1它有效 不知何故 当我尝试在我的 python 版本 3 6 上使用它时 它无法正常工作
  • “无法设置插件占位符”消息?

    Xcode 9 1 模拟器10 0 操作系统 10 12 6 我想将我的贴纸包的新版本上传到 iTunes Connect 但 产品 gt 存档 是灰色的 所以我运行模拟器并得到 无法为 名称 设置插件占位符 在全世界任何地方只有一个答案
  • 这两种关系对于联合运算是否兼容?

    我不确定以下两种关系是否适合联合 R lt schema name B 1 2 2 3 3 And Q lt schema name A B 5 1 6 1 4 2 3 4 我想加入工会 Q U R 可以吗 结果如何 并集运算符要求两个关系
  • svn:ignore 的双重性质

    阅读周围 svn ignore 命令似乎以两种方式之一工作 如果文件或目录尚未处于版本控制之下 则元数据将添加到存储库中 而忽略签出该项目的所有其他团队成员的文件或目录 如果文件或目录已处于版本控制之下 则忽略将仅在本地应用 并且不会将元数
  • 将数据框组合成列表

    我正在尝试将多个数据帧存储在列表中 但是 在某些时候 数据帧最终会转换为列表 因此我最终会得到一个列表列表 我真正想做的就是将所有数据帧以某种结构保存在一起 这是失败的代码 all dframes lt list initialise a
  • WinSCP 命令行被动模式

    我通过命令行调用 WinSCP 但我不知道如何为脚本正确设置被动模式 现在是脚本 option batch on option confirm off open ftp user and pass details 21 cd out opt
  • Spring/Hibernate 连接泄漏与 ScrollableResults

    我目前正在调查以下问题 该问题也影响我们的生产环境https github com querydsl querydsl issues 3089 https github com querydsl querydsl issues 3089 这
  • 递归多对多关系的相关名称不起作用

    多对多 非递归 class A models Model pass class B models Model parents models ManyToManyField A related name children gt gt gt A
  • 如何通过.apk传递dalvik命令行参数?

    我知道可以通过以下方式在Android中启动java程序 adb push hello world zip REMOTE PATH adb shell mkdir REMOTE PATH dalvik cache adb shell dal
  • 搜索方法迭代完成后重新加载/显示 UISearchDisplayController 的 searchResultsTableView

    我修改了Apple的示例iOS项目的代码表格搜索 http developer apple com library ios samplecode TableSearch Introduction Intro html以便通过解析 Web 服