出现的键盘会更改视图的框架

时间:2016-10-05 13:42:59

标签: ios objective-c keyboard keyboard-events

在我的应用程序中点击导航栏按钮并作为响应我将导航栏下方的视图向下移动60 px(代码中的delta var),并在向下移动的视图下方显示UITextField和at同时显示键盘。

这就是我实现它的方式:

-(void)btnSearch_Click:(id)sender{
    float delta = _viewBtnSort.frame.size.height;
    CGRect rect = rectSearch;
    rect.origin.y += delta;

    [UIView animateWithDuration:0.3f animations:^{
       [_viewSearchResults setFrame:rect];
    }completion:^(BOOL finished) {
       [buttonSearch setEnabled:NO];
       [_txtFieldSearch becomeFirstResponder];
}];}

问题

它可以正常工作几次然后因为一些无法解释的原因(到目前为止无法找到原因),当键盘出现时它会将我的视图推回来,我不会得到我想要的效果。

有人有任何想法吗?谢谢!

1 个答案:

答案 0 :(得分:0)

因此我一直在寻找修复方法,并使用此iOS8: What's going on with moving views during keyboard transitions?答案进行修复。

我更改了我的约束而不是框架,现在它似乎工作正常。