求问 iOS 中如何实现:当在 UItextField 中输入文字时,于下方 scrollView 中以搜索方式产生可点选的 tag list?

2016-06-12 09:28:10 +08:00
 lyricorpse

请问各位 V 友开发者,这种情况一定要用 UISearchBar 么?我想保留之前利用别的 framework 设定好的 UITextField 的样式,并且希望 UI 界面高度定制而不是通常见到的tableView

我也试着找了一些库,看到 reel-search 有点接近我的需求,不过我希望搜索结果能以 tag list 的形式呈现。

谢谢!

3400 次点击
所在节点    iDev
16 条回复
ma125125t
2016-06-12 14:45:59 +08:00
UISearchBar 能做到的 UItextField 都能做到,不过我语文不好,实在看不懂你的问题
lyricorpse
2016-06-12 14:54:30 +08:00
@ma125125t 谢谢你的回复!我是初学者可能表达的不太准确,我想实现的效果是:在`UITextField`中输入文字,在下方生成 autocompletion 的 suggestions ,点按 suggestion 以后能直接补全。请问有现成的开源实现可以参考么?
jackisnotspirate
2016-06-12 14:57:20 +08:00
lyricorpse
2016-06-12 15:41:06 +08:00
@jackisnotspirate 谢谢,可是这个貌似不带搜索功能?
我希望能预先设定好一些 tag ,然后在输入过程中按照 antocomplete 的方式显示出相应的 tag
Henrybsbhp
2016-06-12 15:51:53 +08:00
UITextField 的代理里面可以实现的。
kobe1941
2016-06-12 17:57:16 +08:00
我语文不好,完全看不懂你在说什么 。。。。
free9fw
2016-06-12 21:51:47 +08:00
这个可以考虑通过 collectionView 做, autoComplete 的数据源可以服务器实时获取。并不难
XDDD
2016-06-12 22:10:14 +08:00
显然,如果你不想使用内建的,现成的,成套的搜索工具,你就需要自己处理检索和检索结果的显示。即使有这方面的开源实现,这个特定的要求也需要你自己传递数据。
而你居然期待有一个开源项目能完美的符合你所有的要求,而且开箱即用?
lyricorpse
2016-06-13 00:12:10 +08:00
@kobe1941 Sorrry... 就是在 UITextField 输入的时候在下方以 tag 形式列出 autocomplete 的 suggestions 类似 vim 中的 ctrl-p 插件
lyricorpse
2016-06-13 00:17:28 +08:00
@XDDD 谢谢!我目前只找到几个很古老的 obj-C 的 autocomplete 库似乎可以完成我的需求。话说 autocomplete 和 search 本质上一样么?

我要的其实和自带的 search 方案没有本质区别 只是在 UI 组织上变换一下 不确定是否可以
kojirou
2016-06-13 04:16:18 +08:00
为什么不自定义个 tableview 呢
cubepeng
2016-06-13 09:36:27 +08:00
在前东家做 iOS 浏览器开发,我在 github 上写了部分代码,供参考: https://github.com/poetryfar/KSAutoCompleteTextField
xiubin
2016-06-13 09:49:31 +08:00
你的意思就是用 tf 做搜索框,一边输入一遍根据输入内容匹配来给推荐或者历史记录呗?
coa
2016-06-13 19:19:45 +08:00
用内建的好像有个 UISearchDisplayController ,不过好像也是封装了下 UISearchBar 和 UITableView 。。。一定要 UITextField 的话估计只能自己监视输入并实时刷新一个 tableview 了,自定义一个 Cell 是不是就能自己定制 UI 了? 如果 tag list 是指横向的、有椭圆背景高亮的那种,估计得朝 UICollectionView 方向考虑而不是 UITableView 。。。没实现过,单纯一个猜想。。。
lyricorpse
2016-06-14 00:23:43 +08:00
@cubepeng 感谢!
@xiubin 是的
@coa 嗯,感觉是 UICollectionView ,所以这种情况下搜索模块要自己写咯?
jackisnotspirate
2016-06-28 13:23:39 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/285026

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX