当调用[textField becomeFirstResponder]
时,键盘覆盖了单元格,我希望在调用[textField becomeFirstResponder]
时单元格位于键盘上方。我怎么能这样做?
类似于iphone短信功能!
答案 0 :(得分:1)
您可以使用以下代码通过更改tableview" Y"来显示您在tableview底部的文本字段。坐标
#pragma mark - textfield delegate
- (void) textFieldDidBeginEditing:(UITextField *)sender {
activeTextField = sender;
if ([sender isEqual:TextField1]) {
[self setViewMovedForViewIndex:1];
}
else if ([sender isEqual:TextView2])
{
[self setViewMovedForViewIndex:2];
}
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
[self setViewMovedForViewIndex:0];
return YES;
}
- (void)setViewMovedForViewIndex:(int)index {
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5]; // if you want to slide up the view
CGRect rect = self.table.frame;
switch (index) {
case 0:
rect.origin.y = 0;
break;
case 1:
rect.origin.y = 0;
break;
case 2:
rect.origin.y = -160;
break;
default:
break;
}
self.table.frame = rect;
[UIView commitAnimations];
}
答案 1 :(得分:0)
好像您正在寻找KeyboardAccessory
视图。你可以做到这一点。看看this tutorial。我会帮你的。并尝试研究它。
Apple已为此a sample。