答案 0 :(得分:0)
以编程方式或nib文件创建一个适合您的UIView,包含所有组件[uitextfield,..]。在主视图的底部添加创建的UIView,确保uitextfield可见!
使用 UIPanGestureRecognizer 在用户拖动动作时上下移动视图。
[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanGesture:)];
处理您可能在代码下面使用的转换
[UIView animateWithDuration:slideFactor
delay:0
options:UIViewAnimationOptionCurveEaseOut animations:^{
sender.view.frame = newPosition;
} completion:nil];
即使用户触摸uitextfield,您也需要动画uiview,因此请检查uiview的位置是否应该为其设置动画。
- (void)textFieldDidBeginEditing:(UITextField *)textField {
if(yourView.frame.origin.y < visibleYOfYourView) {
//animate YourView Up
}
}
还有很多其他方法可以实现,这是我想到的!希望它可以帮助你。