2010-04-07 3 views
0

여기에 작은 문제가 있습니다. 나는 UIAlertView와 if 문을 사용하고 두 상황, 둘 다 UIAlertViews 결과. 그러나 한 상황에서 UIAlertView를 닫고 싶습니다. 다른 하나는 UIAlertView를 닫고 루트보기로 돌아 가기를 원합니다. 이 코드는 설명이 코드의 형식을 올바르게 지정하려면 어떻게해야합니까?

은 다음과 같습니다

if([serverOutput isEqualToString:@"login.true"]){ 

[Alert dismissWithClickedButtonIndex:0 animated:YES]; 
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO; 

UIAlertView *success = [[UIAlertView alloc] initWithTitle:@"Success" message:@"The transaction was a success!" 
                  delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
[success show]; 
[success release]; 

} else { 

    UIAlertView *failure = [[UIAlertView alloc] initWithTitle:@"Failure" message:@"The transaction failed. Contact sales operator!" 
                delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
    [failure show]; 
    [failure release]; 
} 
} 

-(void)alertView: (UIAlertView *)success clickedButtonAtIndex: (NSInteger)buttonIndex{ 

switch(buttonIndex) { 
    case 0: { 
     [self.navigationController popToRootViewControllerAnimated:YES]; 
    } 
} 
} 

그래서, 두 경우 모두, 그들은 위의 작업을 수행하지만, 분명히, 그게 내가 원하는 게 아니에요. 내가 여기서 뭘하는지에 대한 아이디어가 있니?

+0

모르겠어요 ,하지만 거의 모든 것이 당신보다 낫습니다. 심한. – Pyrolistical

+0

어떻게 그렇게 나쁜가요? – bear

+0

여기에 어떤 질문이 있습니까? 이것은 코드를 포맷하는 것에 관한 것입니까, 아니면 alertviews에 관한 것입니까? –

답변

1

clickedButtonAtIndex: 방법에서 2 개의 uialertview를 구별해야합니다.

tag 속성을 사용하면 구분할 수 있습니다.

당신이 alerview 그들에게 태그 ID 지정 만들 때 : 마찬가지로

UIAlertView *success = [[UIAlertView alloc] initWithTitle:@"Success" message:@"The transaction was a success!" delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
success.tag = 1; 
[success show]; 

, 그리고

failure.tag = 2; 

당신이 태그 ID에 전환을

switch(alertView.tag){ 
    case 1: //dismiss alertview 
    case 2: //dismiss alertview and return to root view 
} 
0

Eclipse에 코드를 붙여 넣은 다음 ctrl+i을 누르면됩니다.

+0

Xcode는 또한 들여 쓰기 명령을 가지고있다. (나는 그것이 Ctrl + i도 될 수 있다고 생각한다. 그러나 나는 그것을 사용해 왔기 때문에 오랜 시간이 걸렸다.) – dbr

+0

Xcode를 먼저 들여 쓰려고했는데, 그러나 실제로 아무 일도 일어나지 않았습니다. 나는 애플이 당신의 포맷팅을 좋아한다고 생각한다. 이클립스는 좀 더 멋지게 보였다. –

관련 문제