Ios 设置动画时出现UITextField错误

Ios 设置动画时出现UITextField错误,ios,uitextfield,uianimation,Ios,Uitextfield,Uianimation,我有UITextField和UIView动画,它们显示和隐藏带有文本字段的容器。如果我编辑文本,然后隐藏文本字段,我会看到该文本立即在零位置更改帧,然后在正常位置设置动画 但它只会在第一次隐藏时发生,并且只会在输入一些文本时发生。如果有任何想法,我将不胜感激 有显示\隐藏操作代码: - (IBAction)showOrHideSearchBar:(UIButton *)sender { sender.selected = !sender.selected; if (sender

我有UITextField和UIView动画,它们显示和隐藏带有文本字段的容器。如果我编辑文本,然后隐藏文本字段,我会看到该文本立即在零位置更改帧,然后在正常位置设置动画

但它只会在第一次隐藏时发生,并且只会在输入一些文本时发生。如果有任何想法,我将不胜感激

有显示\隐藏操作代码:

- (IBAction)showOrHideSearchBar:(UIButton *)sender {
    sender.selected = !sender.selected;

    if (sender.selected) {
        self.searchBarTopConstraint.constant = self.searchBarContainerView.frame.size.height;
        [self.searchTextField becomeFirstResponder];
    }
    else {
        self.searchBarTopConstraint.constant = 0;
        [self.searchTextField endEditing:YES];
    }

    [UIView animateWithDuration:SEARCH_BAR_ANIMATION_DURATION animations:^{
        [self.searchBarContainerView layoutIfNeeded];
    }];
}

如果要在添加文本或选中文本时设置u r textfield的动画,为什么不能将动画代码添加到If sender.selected Block中?我想在选中按钮时从导航栏显示或隐藏包含textfield的容器,无论是否有文本。无论如何,替换动画代码没有效果