我正在开发一个iOS应用程序,但在尝试实现UIAlertView时遇到了一些麻烦,该UIAlertView在您按下按钮时弹出,并在您按下UIAlertView中的“确定”选项时触发segue。
我的Segue返回上一屏幕,但不会打开新屏幕。
我将发布一些代码,以便您了解如何布置此问题:
-(void)buyProduct{
BOOL succeed = [json objectForKey:@"succeed"];
if(succeed){
// [self.navigationController popViewControllerAnimated:YES];
}
}
-(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
UIAlertView * alerta = [[UIAlertView alloc] initWithTitle:@"Èxit"
message:@"La compra ha finalitzat amb èxit!"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
NSString *string = [alerta buttonTitleAtIndex:buttonIndex];
if ([string isEqualToString:@"OK"])
{
[self.navigationController popViewControllerAnimated:YES];
}
}
我所坚持的是:如何满足“ if(成功)”条件后告诉应用程序必须启动UIAlertView?我不能只使用[self someMethod],因为以下方法在其定义上具有变量。
有什么建议么?
最佳答案
您需要在主队列上调用popViewControllerAnimated:
:
dispatch_sync(dispatch_get_main_queue(), ^{
[self.navigationController popViewControllerAnimated:YES];
});
关于ios - ios通过uialertview触发segue,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24535566/