我在这个论坛上看到了很多问题,这些问题给出了这个主题的答案“UIView 中的 UIButton,当动画不起作用时”,但是在尝试了类似的答案之后
a) UIViewAnimationOptionAllowUserInteraction to the options
b) subView.setUserInteractionEnabled = YES
c) [button addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchUpInside];
他们都不为我工作:-(
这是场景。应用程序处于横向模式,名为 menuView 的 UIView 放置在 x=480,y=0 处。它的高度=200,宽度=150。因此,当我点击右上角的按钮时,会执行以下代码
- (IBAction)showMenu {
[menuView setUserInteractionEnabled:YES];
[optionsButton setUserInteractionEnabled:YES];
[UIView animateWithDuration:0.5 delay:0.0 options:UIViewAnimationCurveEaseOut | UIViewAnimationOptionAllowUserInteraction
animations:^{
self.view.frame = CGRectOffset(self.view.frame, 0, 200);
}
completion:NULL];
}
输出?:视图正在出现,但 menuView 中的 optionsButton 不可点击。我连接了一个事件,做了一个 NSLog(@"Options button clicked"),但什么也没发生:-(
请告诉我我做错了什么?
更新:当我将“menuView”子视图放在 self.view 中时,然后在运行并单击 optionsButton 时,我会收到 NSLog 消息。仅当我将 menuView 的 origin.x 指定为 480 及以上时,它才不起作用。