键盘隐藏tableViewController中的textfields

时间:2010-06-25 04:39:36

标签: iphone objective-c

我正在使用一个有2个部分的tableViewController .... 第一节有7排&第2部分有2行。 因此,当我在第二部分键盘的文本区域编辑隐藏这些字段时,我将如何处理 这些字段的键盘。(我使用的是默认滚动的tableviewController)。 我是新来的客观-C .....请帮助。 谢谢。

1 个答案:

答案 0 :(得分:0)

在点击任何包含文本字段的单元格时,您可以导航到仅包含文本字段,键盘以及“完成”和“取消”按钮的另一个视图。这感觉非常整洁。您可以在Apple的许多iPhone应用程序中看到这一点......例如转到iPhone设置 - >邮件,通讯录,日历 - >签名。

编辑:由于您无法使用标准方式,因此您可以使用以下代码移动整个视图:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
CGPoint currentCenter = [self.view center];
CGPoint newCenter = CGPointMake(currentCenter.x, currentCenter.y - 150);
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[self.view setCenter:newCenter];
[UIView commitAnimations];
return YES;
}

根据您的要求更改此代码中的动画持续时间和中心位置的变化(150)。我假设您的视图控制器是您的文本域的委托。 要将视图恢复到原始位置,请使用相同的代码,但在textFieldShouldReturn或textFieldShouldEndEditing等中添加到center.y

    CGPoint newCenter = CGPointMake(currentCenter.x, currentCenter.y - 150);

P.S。 :我仍然不确定你应该使用第二种方法。