我试图在 UIPicker 上做一个动画,当我的应用程序运行它的隐藏时,当按下按钮时,它会出现从按钮滑动,当我再次点击按钮时,它会滑开。好吧,我的代码做到了,但只有一次。它确实:
首先单击 -> 显示选择器,isPickerHidden = NO
第二次点击 -> 隐藏选择器,isPickerHidden = YES
第三次单击-> 不执行任何操作,但返回 isPickerHidden = NO where in viewDidLoad 声明;
和第四次点击一样,它只返回正确的 BOOL 值。
isPickerHidden = YES;
[self.picker setHidden:isPickerHidden];
if(isPickerHidden == NO){
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.6];
CGRect frame = self.picker.frame;
[self.picker setFrame:CGRectOffset(frame, self.picker.frame.origin.x, self.picker.frame.origin.y)];
[UIView commitAnimations];
isPickerHidden = YES;
NSLog(@"hidden yes");
}else if(isPickerHidden == YES) {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.6];
CGAffineTransform transfrom = CGAffineTransformMakeTranslation(0, -200);
self.picker.transform = transfrom;
[self.picker setHidden:NO];
[UIView commitAnimations];
NSLog(@"hidden no ");
isPickerHidden = NO;
}
我想知道我面临的问题是什么,我错过了什么。谢谢