कुछ स्टार्टर कोड क्या है जिसका उपयोग मैं उस पर एक "ओके" बटन के साथ एक सरल यूआईएलर्ट व्यू बनाने के लिए कर सकता हूं?
कुछ स्टार्टर कोड क्या है जिसका उपयोग मैं उस पर एक "ओके" बटन के साथ एक सरल यूआईएलर्ट व्यू बनाने के लिए कर सकता हूं?
जवाबों:
जब आप अलर्ट दिखाना चाहते हैं, तो यह करें:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"ROFL"
message:@"Dee dee doo doo."
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
// If you're not using ARC, you will need to release the alert view.
// [alert release];
यदि आप बटन क्लिक करने पर कुछ करना चाहते हैं, तो इस प्रतिनिधि विधि को लागू करें:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
// the user clicked OK
if (buttonIndex == 0) {
// do something here...
}
}
और सुनिश्चित करें कि आपका प्रतिनिधि UIAlertViewDelegate
प्रोटोकॉल के अनुरूप है :
@interface YourViewController : UIViewController <UIAlertViewDelegate>
अन्य उत्तर पहले से ही iOS 7 और पुराने के लिए जानकारी प्रदान करते हैं, हालांकि UIAlertView
iOS 8 में पदावनत किया गया है ।
IOS 8+ में आपको उपयोग करना चाहिए UIAlertController
। यह दोनों के लिए एक प्रतिस्थापन है UIAlertView
और UIActionSheet
। प्रलेखन: UIAlertController वर्ग संदर्भ । और NSHipster पर एक अच्छा लेख ।
एक सरल चेतावनी दृश्य बनाने के लिए आप निम्नलिखित कार्य कर सकते हैं:
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Title"
message:@"Message"
preferredStyle:UIAlertControllerStyleAlert];
//We add buttons to the alert controller by creating UIAlertActions:
UIAlertAction *actionOk = [UIAlertAction actionWithTitle:@"Ok"
style:UIAlertActionStyleDefault
handler:nil]; //You can use a block here to handle a press on this button
[alertController addAction:actionOk];
[self presentViewController:alertController animated:YES completion:nil];
स्विफ्ट 3/4/5:
let alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .alert)
//We add buttons to the alert controller by creating UIAlertActions:
let actionOk = UIAlertAction(title: "OK",
style: .default,
handler: nil) //You can use a block here to handle a press on this button
alertController.addAction(actionOk)
self.present(alertController, animated: true, completion: nil)
ध्यान दें, कि, चूंकि यह iOS 8 में जोड़ा गया था, इसलिए यह कोड iOS 7 और पुराने पर काम नहीं करेगा। तो, दुख की बात है कि अब हमें इसके लिए संस्करण जांच का उपयोग करना होगा:
NSString *alertTitle = @"Title";
NSString *alertMessage = @"Message";
NSString *alertOkButtonText = @"Ok";
if (@available(iOS 8, *)) {
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:alertTitle
message:alertMessage
delegate:nil
cancelButtonTitle:nil
otherButtonTitles:alertOkButtonText, nil];
[alertView show];
}
else {
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:alertTitle
message:alertMessage
preferredStyle:UIAlertControllerStyleAlert];
//We add buttons to the alert controller by creating UIAlertActions:
UIAlertAction *actionOk = [UIAlertAction actionWithTitle:alertOkButtonText
style:UIAlertActionStyleDefault
handler:nil]; //You can use a block here to handle a press on this button
[alertController addAction:actionOk];
[self presentViewController:alertController animated:YES completion:nil];
}
स्विफ्ट 3/4/5:
let alertTitle = "Title"
let alertMessage = "Message"
let alertOkButtonText = "Ok"
if #available(iOS 8, *) {
let alertController = UIAlertController(title: alertTitle, message: alertMessage, preferredStyle: .alert)
//We add buttons to the alert controller by creating UIAlertActions:
let actionOk = UIAlertAction(title: alertOkButtonText,
style: .default,
handler: nil) //You can use a block here to handle a press on this button
alertController.addAction(actionOk)
self.present(alertController, animated: true, completion: nil)
}
else {
let alertView = UIAlertView(title: alertTitle, message: alertMessage, delegate: nil, cancelButtonTitle: nil, otherButtonTitles: alertOkButtonText)
alertView.show()
}
UPD: स्विफ्ट के लिए अपडेट किया गया 5. ओबज-सी में उपलब्धता की जांच के साथ पुरानी श्रेणी की उपस्थिति की जांच की गई।
UIAlertView को iOS 8 पर अपग्रेड किया गया है। इसलिए, iOS 8 और इसके बाद के संस्करण पर अलर्ट बनाने के लिए, UIAlertController का उपयोग करने की अनुशंसा की जाती है:
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Title" message:@"Alert Message" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *defaultAction = [UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){
// Enter code here
}];
[alert addAction:defaultAction];
// Present action where needed
[self presentViewController:alert animated:YES completion:nil];
इस तरह से मैंने इसे लागू किया है।
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Title"
message:@"Message"
delegate:nil //or self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert autorelease];
UIAlertView *myAlert = [[UIAlertView alloc]
initWithTitle:@"Title"
message:@"Message"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Ok",nil];
[myAlert show];
यहाँ एक पूरी विधि है जिसमें केवल एक बटन है, एक 'ठीक', UIAlert को बंद करने के लिए:
- (void) myAlert: (NSString*)errorMessage
{
UIAlertView *myAlert = [[UIAlertView alloc]
initWithTitle:errorMessage
message:@""
delegate:self
cancelButtonTitle:nil
otherButtonTitles:@"ok", nil];
myAlert.cancelButtonIndex = -1;
[myAlert setTag:1000];
[myAlert show];
}
सरणी डेटा के साथ सरल चेतावनी:
NSString *name = [[YourArray objectAtIndex:indexPath.row ]valueForKey:@"Name"];
NSString *msg = [[YourArray objectAtIndex:indexPath.row ]valueForKey:@"message"];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:name
message:msg
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];