我正在开发一个应用程序,要求我使用自己的专用搜索功能将UITabBarItem添加到我们应用程序的标签栏。这是对整个应用程序中内置搜索的补充(通过点击其他UITabBarItem并搜索其他UITableView)。
现在,首先想到的是 Apple 人机界面指南 ( HIG ),其中指出:
“避免使用选项卡进行搜索,除非它是您应用程序中的主要功能,应该作为独特的模式。”
所以普遍的想法是避免,但这不是一个硬性规定。尽管如此,我还是让客户注意到了这一点。他们回答说:“我们担心人们不知道在其他UITabBarItem和UITableView中寻找搜索。” 我的回答是:“Apple 自己的应用程序提供了这种搜索体验。任何已经使用这些应用程序的人都会知道如何使用您的应用程序。这就是我们希望 UE 保持一致并努力遵循 HIG 的原因。” (更不用说这是应用商店批准的要求,但我离题了。)
嗯 .. 他们的第二个回答是:“好吧,这是有道理的,但我们也希望人们能够搜索所有内容,而不仅仅是不同表格视图中的特定主题。”
很好。全球搜索它是。:)
寻找一个带有专用搜索UITabBarItem的示例,我遵循了 iPhone 自己的 App Store 模型。我对最终的 UI 感到非常满意。在UISearchBar中输入时,您会得到一个简单的纯文本、在输入时搜索的名称建议列表(以最小的输入时间延迟完成,以免使搜索服务器不堪重负)。您可以调整搜索文本,点击其中一个建议来代替您的搜索词,或者直接点击“搜索”按钮。然后将结果列表替换为更精美的结果集,以更全文的方式进行搜索,每个单元格中都有图标和有用的元数据。常用的成分。点击UISearchBar带回纯文本建议。取消搜索会删除所有内容。不理会它会保留最后一个查询(结果列表)以供显示。
所以我把这个介绍给客户......并且......他们喜欢它!他们只有最后一个请求:“当我们选择专用的 Search UITabBarItem时,键盘可以立即弹出吗?现在我们必须点击UISearchBar,但点击太多了。”
(大概他们希望只有在没有预先存在的搜索在起作用的情况下才会发生这种情况。)
起初我认为这是合理的......但后来我查看了其他应用程序。我找不到任何这样做的。即使是 App Store 应用程序也要求您点击UISearchBar来调出键盘。另外,HIG也说了这么多:
“当用户点击搜索栏时,会出现一个键盘。”
不是“当用户点击搜索UITabBarItem时,会出现一个键盘。”
此外,用户界面应该是宽容的。如果您犯了一个错误并打算在“更多”列表中选择另一个项目怎么办?(或者如果它在正确的选项卡栏上,如果您打算选择不同的UITabBarItem怎么办?)现在您必须停止并取消搜索以关闭键盘,即使您不是要调出它。
总之,我有点心烦意乱,并希望了解最佳实践和其他 POV。在这种情况下你会怎么做?