2017-05-18 160 views
1

我已到处寻找,似乎没有一个明确的例子。我试图做到这一点,这里的文本框将作为一个搜索栏,然后用户将能够添加项目: enter image description here使用UITextField进行搜索

大多数例子似乎使用的用户界面搜索栏和的tableView在此它显示过滤的结果。但是没有真正的例子只使用textField。

我的另一种选择是尝试,只是得到,它检查如果输入的字符数据的数组,这样的事情相匹配的自动完成:

是否有更清楚的例子或教程中,我可以遵循?我对编程相当陌生,所以我宁愿它在Swift中。

其它类似的附图:

http://www.iostutorialjunction.com/2017/04/integrate-search-functionality-in-ios-using-swift3.html

How to make UITextField behave like a UISearchBar in Swift?

https://www.raywenderlich.com/113772/uisearchcontroller-tutorial

http://www.matthewhsingleton.com/blog/2016/5/26/predictive-text-table-view-swift-version-of-ray-wenderlich

https://www.youtube.com/watch?v=YZ_S2GHFwW4

https://www.youtube.com/watch?v=XtiamBbL5QU&t=975s

Getting autocomplete to work in swift

https://github.com/EddyBorja/MLPAutoCompleteTextField

+0

你想要一种只要输入文本就运行的方法吗?并在该文本的基础上,你想过滤一些字符串在阵列右? –

+0

@SyedQamarAbbas正确,请参阅我的更新图片。 – Chace

回答

1

有很多方法来完成这个任务。 您可以在其后面放置一个textField以及一个UILabel。 而当每个你输入一个单词时,只需更改该标签的文本。将标签的textColor设置为浅灰色,你将会很好。 要设置一个方法,每次用户键入的东西都在下面的代码中使用。

//Below line will set a method to textFields value change event. 
searchTextField.addTarget(self, action: #selector(self.textIsChanging(textField:)), for: .editingChanged) 



func textIsChanging(textField: UITextField) { 

} 
+0

感谢您的回复。你的意思是“把textField和UILabel放在它后面”,在你的背后。同样在函数textIsChanging(textField:UITextField)中,这将检查输入的数据是否等于数组中的某个字符串? – Chace

+0

是的,这是您将检查输入的文本是否等于某个字符串的方法。 转到故事板在UITextField后面放置一个标签。给textField一个clearColor并在搜索匹配字符串时只需更新uilabel的文本而不是textField的文本。这会给你在上面想要的效果图片 –

+0

非常感谢! – Chace