我在我的應用程序中有一個計數器,它有一個重置按鈕,但不是在輕按後立即重置,我想要一個UIAlertView彈出並讓用戶再次點擊重置爲警報中的按鈕。我在這方面並不完全有經驗,所以我會問你的答案只是簡單地添加/替換下面的代碼部分。我正在研究這個笑話。謝謝你的幫助!IBIAction在UIAlertView xcode 4.3
- (IBAction)reset {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"titleHere"
message:@"messageHere"
delegate: self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Reset", nil];
alert.tag = TAG_RESET;
[alert show];
}
-(void)alertView:(UIAlertView *)alertView
clickedButtonAtIndex:(NSInteger)buttonIndex {
if (alertView.tag == TAG_DEV) { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.examplesite.com"]]; // just another alert don't worry about this one
} else if (alertView.tag == TAG_RESET) { // i need help here
}
}
所以基本上只是一個警報內的IBAction。
UPDATE: 如何將納入這按鈕?
-(IBAction)zero {
counter=0;
count.text = [NSString stringWithFormat:@"%i",counter];
}
UPDATE2:
所以我這樣做,現在完全清除計數,唯一的問題是現在的警報不斷彈出你點擊取消或者重置後...
-(IBAction)resetButtonPushed {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"titleHere"
message:@"messageHere"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Reset", nil];
alert.tag = TAG_RESET;
[alert show];
}
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
if (alertView.tag == TAG_DEV){
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.examplesite.com"]]; // just another alert don't worry about this one
}
else if (alertView.tag == TAG_RESET) { [self resetButtonPushed]; {
counter=0;
count.text = [NSString stringWithFormat:@"%i",counter];
} if ([[alertView buttonTitleAtIndex:buttonIndex] isEqualToString:@"Reset"]){
// Reset button tapped
}
}
}
我不明白你要完成什麼。當用戶在UI上按下按鈕時調用重置方法;它會顯示帶有重置按鈕的警報。如果用戶按下該按鈕,則會調用clickedButton回調。在if(alertView.tag == TAG_RESET)中,您知道重置已被按下,所以此時您清除了計數器。我錯過了什麼? – 2012-03-06 22:43:36
我正在嘗試做幾乎所有的NJones。 – DiscoveryOV 2012-03-07 00:37:34