2

该问题只能在 iOS 7 中重现。

在委托函数中:- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex如果创建了 UIAlertView,则警报视图无法自动旋转。这是示例代码:

- (IBAction)buttonTapped:(id)sender
{
    UIActionSheet *actionSheet = [[UIActionSheet alloc]
                                  initWithTitle:@"action sheet"
                                  delegate:self
                                  cancelButtonTitle:@"cancel"
                                  destructiveButtonTitle:@"ok"
                                  otherButtonTitles:nil];
    [actionSheet showInView:self.view];
}

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
    UIAlertView *alert = [[UIAlertView alloc]
                          initWithTitle:@"alert"
                          message:nil
                          delegate:self
                          cancelButtonTitle:@"ok"
                          otherButtonTitles:nil];
    [alert show];
}

这是iOS 7的错误吗?如果是,有没有办法让警报视图与屏幕中的其他视图一起自动旋转?

4

1 回答 1

3

尝试从 UIActionSheet 的另一个委托方法呈现警报视图。这确实有效:

- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex

这肯定看起来像 iOS7 中的一个错误 :)

于 2013-10-21T11:03:43.640 回答