问题标签 [uisearchdisplaycontroller]

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 投票
7 回答
9142 浏览

iphone - 如何从 UITabBar 控制器中的控制器使用 UISearchDisplayController?

我有一个管理多个控制器的 UITabBar 控制器(使用 SDK 3.0)。其中之一是 tableView 控制器,我需要使用 UISearchDisplayController 提供搜索功能。我的所有代码都基于 Apple TableSearch 示例。但是,当单击选项卡时,tableView 控制器出现显示其相关内容,但没有出现 searchBar。我已经检查了 IB 中的 xib 以确保所有的网点都已正确设置,但无论我如何尝试 self.searchDisplayController 始终为 nil 并且搜索栏不会出现。

在实践中,我从 TableSearch 示例中复制了 MainView.xib,并将文件的所有者类设置为选项卡的正确控制器类。插座的设置与示例 MainView.xib 中的一样。我是否错过了任何重要的步骤或做错了什么?

先感谢您。

0 投票
1 回答
1236 浏览

iphone - UISearchDisplayController 使用网络获取的数据

我有一个UITableViewController子类,它呈现预设类别的列表并为每个类别获取网站/网址列表。我想添加一个允许按站点名称搜索的搜索功能。

我想要的是有一个通常的搜索界面,它将启动一个搜索线程(它将获取和处理结果),然后将其显示在表中。UITableView如果不是一个表单 xib(即它是搜索表视图),我已经修改了我的表委托以返回自定义单元格集:

一旦我的网络线程(从 生成searchBarSearchButtonClicked:)完成,它就会要求搜索控制器表重新加载数据:

但我仍然看到旧表(带有目录条目),但它似乎忽略了触摸。

0 投票
4 回答
3091 浏览

iphone-sdk-3.0 - 在文本字段中显示 UISearchBar "X" 与相邻的取消按钮

我知道我可以将showsCancelButton设置NOUISearchBar ...直到您点击搜索栏文本字段,然后取消按钮仍然出现!(至少它对我有用。)

有没有办法在UISearchBar文本字段中的圆圈中显示“X”,而不是让那个单独的取消按钮显示在它旁边?请注意,此按钮仅在搜索模式处于活动状态时为我显示,这与showsCancelButton的设置无关。

0 投票
2 回答
2175 浏览

iphone - 选择标签栏项目时激活 UISearchBar - 帮助还是阻碍?

我正在开发一个应用程序,要求我使用自己的专用搜索功能将UITabBarItem添加到我们应用程序的标签栏。这是对整个应用程序中内置搜索的补充(通过点击其他UITabBarItem并搜索其他UITableView)。

现在,首先想到的是 Apple 人机界面指南 ( HIG ),其中指出:

“避免使用选项卡进行搜索,除非它是您应用程序中的主要功能,应该作为独特的模式。”

所以普遍的想法是避免,但这不是一个硬性规定。尽管如此,我还是让客户注意到了这一点。他们回答说:“我们担心人们不知道在其他UITabBarItemUITableView中寻找搜索。” 我的回答是:“Apple 自己的应用程序提供了这种搜索体验。任何已经使用这些应用程序的人都会知道如何使用您的应用程序。这就是我们希望 UE 保持一致并努力遵循 HIG 的原因。” (更不用说这是应用商店批准的要求,但我离题了。)

嗯 .. 他们的第二个回答是:“好吧,这是有道理的,但我们也希望人们能够搜索所有内容,而不仅仅是不同表格视图中的特定主题。”

很好。全球搜索它是。:)

寻找一个带有专用搜索UITabBarItem的示例,我遵循了 iPhone 自己的 App Store 模型。我对最终的 UI 感到非常满意。在UISearchBar中输入时,您会得到一个简单的纯文本、在输入时搜索的名称建议列表(以最小的输入时间延迟完成,以免使搜索服务器不堪重负)。您可以调整搜索文本,点击其中一个建议来代替您的搜索词,或者直接点击“搜索”按钮。然后将结果列表替换为更精美的结果集,以更全文的方式进行搜索,每个单元格中都有图标和有用的元数据。常用的成分。点击UISearchBar带回纯文本建议。取消搜索会删除所有内容。不理会它会保留最后一个查询(结果列表)以供显示。

所以我把这个介绍给客户......并且......他们喜欢它!他们只有最后一个请求:“当我们选择专用的 Search UITabBarItem时,键盘可以立即弹出吗?现在我们必须点击UISearchBar,但点击太多了。”

(大概他们希望只有在没有预先存在的搜索在起作用的情况下才会发生这种情况。)

起初我认为这是合理的......但后来我查看了其他应用程序。我找不到任何这样做的。即使是 App Store 应用程序也要求您点击UISearchBar来调出键盘。另外,HIG也说了这么多:

“当用户点击搜索栏时,会出现一个键盘。”

不是“当用户点击搜索UITabBarItem时,会出现一个键盘。”

此外,用户界面应该是宽容的。如果您犯了一个错误并打算在“更多”列表中选择另一个项目怎么办?(或者如果它在正确的选项卡栏上,如果您打算选择不同的UITabBarItem怎么办?)现在您必须停止并取消搜索以关闭键盘,即使您不是要调出它。

总之,我有点心烦意乱,并希望了解最佳实践和其他 POV。在这种情况下你会怎么做?

0 投票
1 回答
1151 浏览

iphone - 无法在 iphone 应用程序中显示搜索栏

我试图让搜索栏显示在我的应用程序中。

我正在关注 TableSearch 示例应用程序中显示的示例。

除了数据之外,我或多或少地以完全相同的方式实现了它。但是,我似乎永远无法显示实际的搜索栏。

我的应用程序和 TableSearch 应用程序之间的唯一区别是我的应用程序同时使用了标签栏和导航栏。但是,我已经将这些入侵到 TableSearch 中,它仍然可以按预期工作。

有什么建议么?其他人有类似的问题吗?这真让我抓狂。

在此先感谢,马特

0 投票
3 回答
6672 浏览

iphone - 自定义 UISearchDisplayController

替代文字 http://img210.imageshack.us/img210/5992/searchdisplaycontroller.png

以下对象是否可自定义?

1. UISearchBar 范围按钮(UISegmentedController)

2. UIResultsTableView

3.键盘(至少它是黑色的)

0 投票
4 回答
2137 浏览

iphone-sdk-3.0 - 带有完成和完成按钮的 iPhone 文本输入(不是搜索)

使用 iPhone SDK 3.0,我希望允许在键入时出现带有(可选)完成选项的文本输入,即也允许自由格式输入。因此,我使用 UISearchBar(具有文本更改事件)和 UISearchDisplayController 来呈现选项。

问题是我希望 DONE 按钮说 DONE 而不是 SEARCH,但是我找不到设置它的方法。显然我觉得我遗漏了一些东西,或者 SDK API 的 Interface Builder 会有一些属性需要设置。

我已经看到其他应用程序(在商店中)已经达到了我想要的结果(自由格式输入、完成、完成按钮)所以也许我缺少另一种方法。在此先感谢您的任何指点。

0 投票
2 回答
1223 浏览

iphone - 有没有办法从 UISearchDisplayController 中删除“无结果”标签?

我有一个使用新的 sdk3 UISearchDisplayController 的 three20 控制器。我还有一个从网络加载的模型,似乎无论我做什么,UISearchDisplayController 的默认行为都是显示“无结果”标签。有没有办法让它消失并显示其他东西?

0 投票
2 回答
4844 浏览

iphone - 调用 cancelButton 后隐藏 UINavigationBar 下面的 UISearchBar

我通常使用[self.tableView setContentOffset:CGPointMake(0,40)];它来隐藏导航栏下方的 UISearchBar(我设置为 tableView 的标题)。viewDidLoad 中一切正常:加载视图时,searchBar 位于 navigationBar 下方。然后我把同一行代码

但它可以做任何事情:当单击取消按钮时,searchBar 仍然可见。怎么了?

0 投票
2 回答
4429 浏览

iphone - 搜索显示控制器如何隐藏导航栏?

当您进入由搜索显示控制器处理的搜索栏时,它会向上滑动视图并将导航栏向上推。这很容易做到,但是,当您单击搜索结果并将新视图推送到导航控制器的堆栈时,导航栏会从右侧滑入视图!

这是怎么做到的?如果您只是将导航栏设置为隐藏或显示,它会立即发生。我无法弄清楚它似乎只是为堆栈中的一个视图控制器隐藏了!

非常感谢,

迈克尔