问题标签 [uisearchcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3751 浏览

uisearchbar - 如何阻止 UISearchBar 在 iOS 8 中使用 UITableview 滚动

我正在使用 UISearchBar 、 UISearchController 和 UISearchResultsController 并且不知道如何阻止 UISearchBar 在 iOS 8 中使用 UITableview 滚动

没有找到有效的答案。

0 投票
1 回答
892 浏览

ios - UISearchController 错位

我的 UISearchController 有问题。我无法将它与 tableView 正确放置。

结果表未涵盖主表的整个区域:

在此处输入图像描述

0 投票
1 回答
1502 浏览

ios - UITableViewHeader 的 UISearchBar 子视图?

我想将 UISearchBar 添加到已经有标题视图的 UITableView 中。当我尝试将搜索栏添加到现有标题视图时,它会一直工作,直到我点击它,此时我得到The view hierarchy is not prepared for the constraint,这似乎是因为搜索栏不是 tableview 的直接子视图,所以当 UISearchController 尝试更新时它不能的约束。

我发现解决此问题的唯一方法是将表格视图标题设为搜索栏,然后一切正常,但当然我会丢失已经在标题视图中的其他视图。

0 投票
1 回答
150 浏览

cocoa-touch - 实现搜索栏?

我有一个tableView在故事板上创建的项目。这很简单,我正在按照教程进行操作,我的视图控制器看起来像这样

因此,当您点击一个单元格时,它会在其旁边放置一个复选标记。现在我希望人们能够搜索事物。问题是,Apple 更改了 iOS 8 的搜索栏,据说让它变得更简单,但我找不到任何关于UISearchController取代 deprecated 方法的教程。

所以我将搜索栏和搜索显示控制器拖放到我的视图控制器中并添加了协议声明,但我遇到了崩溃:UISearchControllerDelegate, UISearchResultsUpdating>

每当我点击搜索栏时。

我也有方法

但它是空的,因为我不知道该放什么。据说它非常简单,只需要几行代码即可启动并运行,但我在这里找到的一个教程:http: //www.stuartbreckenridge.com/blog/examineing-the-new-uisearchcontroller-api现在只有在 swift 中,但没有解释该方法中的内容。

0 投票
0 回答
392 浏览

ios - 非 UITableViewController 中的 UISearchController

我有一种情况,我想使用 UISearchController 来允许搜索/过滤 UITableView 的内容。我想要的行为与 Apple 在联系人应用程序中所做的相同,其中搜索栏保持固定在表格视图的顶部,内容在下方滚动。当点击搜索栏时,我希望栏动画的默认行为覆盖导航栏并显示下面的结果,就像 Apple 联系人一样。

我制作了一个示例应用程序来隔离事物并将其与以下搜索控制器初始化代码配对。这个 VC 是带有半透明导航栏的 UINavigationController 的根视图控制器。

这会导致两个问题:1) 搜索栏没有将高度扩展到 64px,因此您仍然可以看到状态栏后面的内容;2) 每当您将项目推送到导航堆栈然后返回时,父视图中的内容 (表视图)跳转。

我已经看到很多关于 UISearchcontroller 的困惑,所以我并不十分乐观地认为有人有一个好的解决方案,但无论如何都要尝试。

0 投票
3 回答
9600 浏览

uisearchbar - 如何通过 UIsearchController 方法替换 SearchDisplayController(在 IOS 8 中已弃用)

我显然还是 Xcode 的新手。所以SeacrhDisplayController在 iOS 8 中已弃用,我不知道如何UIsearchController在 tableview 上实现。

我已经用谷歌搜索了它,但我没有看到任何特定或明确的教程。

这是我的代码SearchDisplayController

0 投票
1 回答
3142 浏览

ios - 从 UISearchController 过滤的搜索结果中删除

我有一个tableView采购它的单元格内容,CoreData并且已经用SearchDisplayController新的SearchController. 我使用同一个tableView控制器来呈现完整的对象列表以及过滤/搜索的对象。

我已经设法使搜索/过滤工作正常,并且可以从过滤列表移动到这些项目的详细视图,然后编辑并将更改成功保存回过滤的 tableView。我的问题是从过滤列表中删除单元格会导致运行时错误。以前SearchDisplayController我可以很容易地做到这一点,因为我可以访问SearchDisplayController's结果 tableView,所以下面的(伪)代码可以正常工作:

不幸的是,没有这样的 tableView 暴露给UISearchController我,我不知所措。我已经尝试使 tableView 上的tableView.beginUpdates()andtableView.endUpdates()条件不是搜索 tableView 但没有成功。

作为记录,这是我的错误消息:

Assertion failure in -[UITableView _endCellAnimationsWithContext:], /SourceCache/UIKit_Sim/UIKit-3318.65/UITableView.m:1582

* 编辑 *

我的 tableView 使用 FetchedResultsController 从 CoreData 填充自己。这个 tableViewController 也是 SearchController 用来显示过滤结果的一个。

然后在 ViewDidLoad

就错误消息而言,我不确定我可以添加多少。按下通过滑动显示的红色删除按钮(仍显示)后,该应用程序立即挂起。这是 1 - 5 的线程错误日志。应用程序似乎挂在数字 4 上。

我希望这会有所帮助。

* 编辑 2 *

// tableView.beginUpdates() }

0 投票
0 回答
154 浏览

cocoa-touch - ios 8中的搜索栏?

我看过很多苹果文档、很多例子和一些 github 项目。

http://www.raywenderlich.com/16873/how-to-add-search-into-a-table-view

http://www.appcoda.com/search-bar-tutorial-ios7/

只有ios 7。

https://developer.apple.com/library/ios/samplecode/TableSearch_UISearchController/Introduction/Intro.html 混淆了许多不必要的混乱,使其复杂化。

http://www.raywenderlich.com/76519/add-table-view-search-swift仅适用于 swift,但如果有人可以将其翻译为目标 c,这似乎正是我所需要的。

我完全不明白。

如果有人可以逐步告诉我差异,或者简单的细分,那将有所帮助。

在 ios 7 中似乎要容易得多,他们为什么要更改它?

即使我在情节提要编辑器中拖动搜索栏控制器并将其链接到我的标题,默认属性和名称也是已弃用的 uisearchdisplaycontroller。

我还有一个不容易用谷歌搜索的问题:

如果我有一个表格视图,很容易知道选择了什么。

但是当我选择或编辑搜索结果时,如果索引路径会不同,我怎么知道要对表视图数组做什么?

0 投票
1 回答
332 浏览

ios - 如何将一个 UIStoryboard 场景与 UITableViewController 和 resultsTableViewController 与 UISearchController 配合使用?

在 iOS 8 中,UISearchDisplayController 已被弃用,而 UISearchController 可以选择将搜索行为添加到应用程序。这迫使开发人员创建一个单独的 UITableviewController 来显示搜索结果——让我们为resultsTableViewController调用这个 tableViewController 。这个线程很好地介绍了如何从 UISearchDisplayController 迁移到 UISearchController:searchDisplayController deprecated in iOS 8

在我的应用程序中,我使用的是 interfacebuilder 和 storyboard。我的 UITableViewController 是在情节提要中自定义的,带有自定义单元格,给了我想要的东西。但是,我希望我的resultsTableViewController看起来与我的tableViewController完全一样。

问题:有没有办法在我的tableViewControllerresultsTableViewController的情节提要中使用相同的场景?如果没有,最好的解决方法是什么?这个问题在这里得到了部分回答:How to share one storyboard scene between multiple UIViewControllers,但我还有一段路要走。

0 投票
1 回答
2621 浏览

ios - IOS8 UISearchController 直接显示搜索栏

我正在尝试使用 UISearchController 为我的 iphone 应用程序显示一个简单的搜索屏幕。我使用了嵌入在UINavigationController中的UITableViewControllerUISearchController

  • 这让我看到以下屏幕(状态 1

带导航栏的搜索控制器

  • 当用户单击搜索字段时,我会看到下面的屏幕(状态 2):搜索栏很好地显示在状态栏下方的屏幕顶部。

搜索控制器已激活

我想做的是立即获得状态2而不进入状态1

我尝试添加此代码

但如果动画为假,它要么不显示搜索栏,要么按我想要的方式显示,但在临时显示导航栏的不必要过渡之后