如何在iOS8中将UITextView移动到键盘上方?

时间:2015-10-29 11:21:11

标签: ios objective-c iphone ios8 xcode6

在我的应用中,我有一个包含UITableViewUITableview内部的表单,我有多个UITextField和UITextView。 每当我点击UITextfield或UITextView Keypad出现时。

当用户点击他们想要输入数据的TextFiled时,我可以移动UITextField UP。但是,当用户想要输入数据时,我现在可以移动TextView。

以下是我的代码:

-(void)viewDidLoad
{

    [[NSNotificationCenter defaultCenter] addObserver:self
    selector:@selector(keyboardFrameDidChange:)
    name:UIKeyboardDidChangeFrameNotification object:nil];

    [[NSNotificationCenter defaultCenter] addObserver:self
    selector:@selector(keyboardWillHide:)
    name:UIKeyboardWillHideNotification object:nil];

}

有人可以帮助我将UITextView UP移到键盘上方吗?

先谢谢。

2 个答案:

答案 0 :(得分:0)

您可以使用此库

https://github.com/michaeltyson/TPKeyboardAvoiding

当uitextfiled和uitextView显示隐藏键盘时,它将处理帧。

你确定你喜欢这样:

  

在ScrollView的情况下添加“容器”视图,并将约束设置为superview,这也是一个很好的做法,如下所示:ViewController - > UIScrollView(TPKeyboardAvoidingScrollView) - > UIView(UI元素的容器) - > UITextView的。如果要垂直滚动,请将高度约束设置为“> =”。

答案 1 :(得分:0)

使用IQKeyboardManager来解决此问题。

特点:

1)CODELESS,零行代码

2)自动投放

3)没有更多的UIScrollView

4)没有更多的子类

5)没有更多的手工工作

6)没有#imports

它适用于两种语言(Swift和Objective C)