Ios 从UIAlertView按钮以编程方式按view?

Ios 从UIAlertView按钮以编程方式按view?,ios,objective-c,uiviewcontroller,uialertview,uialertviewdelegate,Ios,Objective C,Uiviewcontroller,Uialertview,Uialertviewdelegate,我会从UIAlertView按钮打开一个UIViewController,但它不起作用 当用户终止游戏时,我会显示一个带有一些文本和两个按钮的UIAlertView,“Ok”关闭警报,“Score”打开得分页面 这是实际的UIAlertView: UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"YOU WIN!"

我会从
UIAlertView
按钮打开一个
UIViewController
,但它不起作用

当用户终止游戏时,我会显示一个带有一些文本和两个按钮的
UIAlertView
,“Ok”关闭警报,“Score”打开得分页面

这是实际的
UIAlertView

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"YOU WIN!"
                                                            message:[NSString stringWithFormat:@"You win a game in %d seconds!",seconds]
                                                           delegate:self
                                                  cancelButtonTitle:@"Ok"
                                                  otherButtonTitles:@"Score", nil];
        [alert show];
这是推送视图的代码:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSString *title = [alertView buttonTitleAtIndex:buttonIndex];
    if([title isEqualToString:@"Score"]){
        ScoreViewController *score = [[ScoreViewController alloc]init];
        [[self navigationController] pushViewController:score animated:YES];
    }
}
我得到的是一个完全黑屏。有人能帮我吗?我不知道我做错了什么

PS:
ScoreViewController
在根视图中有一个segue,但当然我不能从情节提要中创建一个新的segue,因为我想通过编程方式从警报视图按钮执行segue


希望我已经清楚了,任何帮助都将非常感谢

看起来您正在实例化
ScoreViewController
的一个实例,并将其推到导航控制器上。虽然这是展示另一个控制器的合法方式,但它与执行故事板序列不同

首先,显然,您必须确保在情节提要中有一个连接视图控制器的segue。听起来你已经做到了这一点,所以接下来你要确保segue有一个标识符。选择序列并在属性检查器中设置其标识符。然后在代码中执行segue:

[self performSegueWithIdentifier:@"YourIdentifier" sender:self];

看起来你根本不是在表演一段。以编程方式执行故事板序列的方法是
performsguewithidentifier:sender:
ops对不起,你是对的!我以前试过segue,但没有成功,所以我在谷歌上搜索并找到了“pushViewController:animated:”,然后我忘了更改代码。我将编辑我的问题,但是'PerformsgueWithIdentifier:sender:'使用'Thread 1:signal SIGABRT'使应用程序崩溃'我忘记了“显而易见”的部分!哈哈,非常感谢你的帮助。