Objective c 关闭UIAlertView后如何重新加载视图?
关闭UIAlertView后,我想重新加载一个视图(对视图运行Objective c 关闭UIAlertView后如何重新加载视图?,objective-c,ios,Objective C,Ios,关闭UIAlertView后,我想重新加载一个视图(对视图运行viewwilldiscover,对视图运行viewwilldiscome) 我该怎么做?我已经试着把权力下放给nil和self。这是我的密码 - (IBAction)doStuffWhenUIButtonIsClicked:(id)sender { int intSelection = [sender tag]; NSString* strAlertTitle; NSString* strAlertMessa
viewwilldiscover
,对视图运行viewwilldiscome
)
我该怎么做?我已经试着把权力下放给nil和self。这是我的密码
- (IBAction)doStuffWhenUIButtonIsClicked:(id)sender
{
int intSelection = [sender tag];
NSString* strAlertTitle;
NSString* strAlertMessage;
if (intSelection == self.intCorrectChoice) {
strAlertTitle = @"Correct tag!";
}
else {
strAlertTitle = @"Sorry, incorrect tag!";
}
strAlertMessage = @"The correct answer was 8.";
self.answerReaction = [[UIAlertView alloc]
initWithTitle: strAlertTitle
message: strAlertMessage
delegate: nil
cancelButtonTitle:@"Next Question"
otherButtonTitles:nil];
[self.answerReaction show];
}
如您所见,我希望在用户回答其中一个问题后加载一个新问题。首先,您需要使所处的视图控制器符合
UIAlertViewDelegate
协议
然后,在显示警报之前,需要添加以下行:
self.answerReaction.delegate = self;
然后,实现didDismissWithButtonIndex委托方法:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
[self viewWillDisappear:YES];
// load your new question
[self viewWillAppear:YES];
}
那就好了 首先,需要使您所在的视图控制器符合
UIAlertViewDelegate
协议
然后,在显示警报之前,需要添加以下行:
self.answerReaction.delegate = self;
然后,实现didDismissWithButtonIndex委托方法:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
[self viewWillDisappear:YES];
// load your new question
[self viewWillAppear:YES];
}
那就好了 只需添加此方法,当您单击UIAlertView上的任何按钮时会触发此方法
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
[self viewWillDisappear:YES];
[self viewWillAppear:YES];
}
}
希望对你有帮助 只需添加此方法,当您单击UIAlertView上的任何按钮时会触发此方法
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
[self viewWillDisappear:YES];
[self viewWillAppear:YES];
}
}
希望对你有帮助 这对我没用!我有:
- (IBAction)OkButton:(id)sender {
// store your selected row
NSUInteger selectedRow = [_intervalPicker selectedRowInComponent:0];
// Display a message to user
if (selectedRow == CorrectAnswer) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Correct!" message:@"YAY!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
RightScoreNumber0 += 1;
}
else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Sorry!" message:@"Wrong answer" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
WrongScoreNumber0 += 1;
}
}
正如你所建议的:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
NSLog(@"OK was selected");
[self viewWillDisappear:YES];
// load your new question
[self viewWillAppear:YES];
}
我收到消息“OK已被选中”,但没有其他事情发生
它终于奏效了,但用另一种方式强>
我将两者都替换
[self viewWillDisappear:YES];
[self viewWillAppear:YES];
与
这对我没用!我有:
- (IBAction)OkButton:(id)sender {
// store your selected row
NSUInteger selectedRow = [_intervalPicker selectedRowInComponent:0];
// Display a message to user
if (selectedRow == CorrectAnswer) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Correct!" message:@"YAY!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
RightScoreNumber0 += 1;
}
else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Sorry!" message:@"Wrong answer" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
WrongScoreNumber0 += 1;
}
}
正如你所建议的:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
NSLog(@"OK was selected");
[self viewWillDisappear:YES];
// load your new question
[self viewWillAppear:YES];
}
我收到消息“OK已被选中”,但没有其他事情发生
它终于奏效了,但用另一种方式强>
我将两者都替换
[self viewWillDisappear:YES];
[self viewWillAppear:YES];
与