Objective c Cocoa Touch-将动画链接在一起
这听起来可能比实际情况更难。实际上,我正在尝试将一些动画链接在一起,以使其看起来平滑。我正在做的是一个Objective c Cocoa Touch-将动画链接在一起,objective-c,ios,cocoa-touch,animation,uipickerview,Objective C,Ios,Cocoa Touch,Animation,Uipickerview,这听起来可能比实际情况更难。实际上,我正在尝试将一些动画链接在一起,以使其看起来平滑。我正在做的是一个UIPickerView的基本动画,它从屏幕底部滑动,当它被取消时,它会滑回屏幕底部。我用两种方法处理此功能-(void)showPicker和-(void)hidePicker 在选择器被隐藏之后,我想直接显示键盘,但我不想在选择器被隐藏之前显示键盘 另外,我想反过来说,在键盘被隐藏后,我想直接显示UIPickerView。我知道我可以观察UIKeyboardDidShowNotificati
UIPickerView
的基本动画,它从屏幕底部滑动,当它被取消时,它会滑回屏幕底部。我用两种方法处理此功能-(void)showPicker
和-(void)hidePicker
在选择器被隐藏之后,我想直接显示键盘,但我不想在选择器被隐藏之前显示键盘
另外,我想反过来说,在键盘被隐藏后,我想直接显示UIPickerView
。我知道我可以观察UIKeyboardDidShowNotification
和UIKeyboardDidHideNotification
那么,如何处理这一问题,使这些动画以平滑的方式链接在一起,最好的方法是什么呢?您是否将选取器显示为在字段或其他地方输入信息的一种方式? 如果是这样,最好使用
UITextField
的inputView
属性,这样它的行为与普通的TextField非常相似,但使用UIPickerView
而不是标准键盘
这是执行此操作的标准方法(在键盘上显示选择器),您不必费心链接动画。对于路径选择器->键盘,请尝试
[UIView animateWithDuration:0.3
animations:^{
[self hidePicker];
}
completion:^(BOOL finished){
[yourInputView becomeFirstResponder];
}];
另一种方法是听UIKeyboardDidHideNotification并在回调中调用
showPicker
。不,我有一个UITextField
(使用键盘)。就是这样。如果您有一个UITextField
,请按照说明使用inputView
属性来显示选择器编号。。我有一个UITextField
和一个UILabel
,我用UIPickerView
中的数据填充它。对不起,我不清楚。我想我应该用积木?类似于-(void)showPickerCompletion:(void(^)completion)
(不确定语法是否正确)那么为什么不将UILabel更改为具有正确inputView
属性的UITextField呢?您可以删除UITextField周围的框架,使其看起来像您的标签,并防止复制/粘贴该UITextField,使唯一可能的输入成为您的UIPickerView
。这就是inputView
属性的作用。哎呀,再次抱歉。我的UIExtField应该从键盘获取输入,UILabel应该从UIPickerView获取输入。我实际上在hidePicker中执行更多的逻辑,因此它将在hidePicker返回之前隐藏。那么显然,您应该将实际隐藏代码放入动画块中。您还可以使用持续时间参数。。。