我有一個帶有UITableView和UITextField的視圖控制器。我訂閱有關鍵盤何時打開和關閉的通知,並使用有關鍵盤高度的信息來調整UITableView和UITextField的大小和位置。當鍵盤顯示和隱藏時調整tableview的大小
但我有兩個問題。
當鍵盤打開時,UITextField似乎會自動重新定位 - 如果定位正確,這將會很好。它似乎有一個垂直偏移量與Tab Bar Controller的高度相同。
如何在鍵盤打開時禁用UITextField嘗試重新設置itsel?
的第二個問題是,當鍵盤打開的UITableView的表部分似乎太長 - 我可以滾動遠低於表中的最後一個元素(我猜類似鍵盤的高度)。當鍵盤打開我設置了的UITableView的新高度是這樣的(kbSize是鍵盤的大小):
CGSize size = self.view.frame.size;
self.tableView.frame = CGRectMake(0,0f, 0,0f, size.width, size.height - kbSize.height);
缺少什麼我在這裏?我是否需要設置表格的「高度」而不僅僅是框架?
感謝,奧