2011-11-26 115 views
0

我有一個UIView(執行UISearchBarDelegate),我有UIImageView,UITableViewUISearchbariOS UISearchBar的鍵盤部分隱藏tableView

搜索時,帶搜索結果的tableView部分被鍵盤隱藏。當鍵盤出現時,我怎樣才能使tableView滾動?

也許我應該讓視圖框架在執行搜索時更小。另一方面,正如我讀過的,不推薦這種方法。

回答

0

您應該將您的視圖註冊爲UIKeyboard通知的觀察者。當鍵盤改變其狀態時,會發送通知,並從通知對象中檢索鍵盤框架,從而可以相應地調整表格視圖框架的大小。一旦鍵盤消失,你會得到一個新的通知,然後你將能夠再次調整表格視圖的大小。除了這些通知(閱讀開發人員庫文檔以瞭解詳細信息),還可以讓您完全使用鍵盤動畫同步您的視圖。

請注意,您也可以使用系統定義的UISearchDisplayController對象來爲您處理這些細節(和其他)。這是一個奇怪的野獸(它不是UIViewController的子類),但如果你學會了如何使用它,將會爲你節省很多額外的工作。

+0

謝謝,這個答案很有幫助。我只使用UIKeyboardDidShowNotification,因爲我可以在用戶單擊「完成搜索」按鈕時調用的方法中再次調整tableView的大小。 – Shiim