当用户触摸自定义下拉列表以从底部显示选择器视图时,我正在制作UIView动画.UIView包含Pickerview ...所以当我改变它的框架向上移动时。我得到我想要的,但是pickerView无法识别触摸!(见下面的截图)
代码就像这样
CGRect pickerFrame=self.pickerSheet.frame;
CGRect viewFrame=self.view.frame;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:SHEET_ANIMATION_DURATION];
//change Frame of View containing UIPickerView
pickerFrame.origin.y=202+animatedDistance;
viewFrame.origin.y-=animatedDistance;//animated distance is value by which view needs to move upward.
[self.pickerSheet setFrame:pickerFrame];
[self.view setFrame:viewFrame];
[UIView commitAnimations];
答案 0 :(得分:0)
首先,++ please **,停止使用这个动画声明,并使用新的块动画:
[UIView animateWithDuration:SHEET_ANIMATION_DURATION
delay:0
options:nil
animations:^{
pickerFrame.origin.y=202+animatedDistance;
viewFrame.origin.y-=animatedDistance;
}
completion:^(BOO f){
//any actions after animation ended
}];
其次,我认为你的问题在其他地方。可能,你执行你的触摸或选择错误。
答案 1 :(得分:0)
请开始使用新的,更好的动画块,但我认为您的代码中缺少某些内容,您需要将代码放在下面:
UIViewAnimationOptionAllowUserInteraction
将此代码放入新动画块的选项中,或找到将其放入旧动画块的方法