2017-05-18 200 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