将自定义UITableViewCell中的UITextField移动到屏幕中心,这样键盘就不会覆盖它

时间:2013-04-02 06:02:09

标签: iphone ios objective-c keyboard uitextfield

我有一个表单,应用程序的用户必须填写该表单才能注册该服务。但是,由于有许多字段需要填充,其中一些字段位于屏幕的底部,因此当键盘出现时,字段会被覆盖,用户无法看到键入的内容。

我正在使用UITableView个自定义Prototype Cells,每个人都有一个名为UITextField的{​​{1}}。

3 个答案:

答案 0 :(得分:1)

您的问题有很多解决方案。您可以使用this。还有一个示例代码,用于处理UITableView的键盘动画。

答案 1 :(得分:0)

当用户开始输入时,您可以移动表格。

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
[UIView beginAnimations:nil context:self.tableView];
            [UIView setAnimationDuration:0.25];
             [self.view setFrame:CGRectMake(0, -130, 320, 460)];
            [UIView commitAnimations];
return YES;
}

答案 2 :(得分:0)

嗨试试这段代码希望能有所帮助

-(void)textFieldDidBeginEditing:(UITextField *)textField
{

  UITableViewCell *newcell = (UITableViewCell*) [[textField superview] superview];

    [tbl_view scrollToRowAtIndexPath:[tbl_view indexPathForCell:newcell] atScrollPosition:UITableViewScrollPositionTop animated:YES];

}