目前我有一個UITableView與自定義單元格,並在每個單元格中有一個UITextField,問題是有時UITextField由UIKeyboard覆蓋。將自定義UITableViewCell滾動到鍵盤右上方?
所以現在我有了UIKeyboard的Y座標,並且我的UITableView在單元格中正常工作。
所以我幾乎可以使用Y座標(浮點數),以便將我的UITableView滾動到該Y座標加上單元格的高度,以便在UIKeyboard上方正確顯示它?
另外,當我的鍵盤隱藏,我將如何重置UITableView到它的正常位置?
任何意見將不勝感激!
謝謝!
CustomCell *cell = (CustomCell*)[[thetextField superview] superview];
CGRect cellRect = [cell convertRect:cell.frame toView:self.view];
float bottomCell = cellRect.origin.y - cellRect.size.height;
if (bottomCell >= keyboardY) {
NSIndexPath *indexPath = [thetableView indexPathForCell:cell];
[thetableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
'scrollToRowAtIndexPath'方法知道你的tableView的可見部分,所以你不需要if語句。 – inorganik 2012-09-17 19:36:05