दिलचस्प पोस्ट
फ़ंक्शन का प्रयोग करके दो तिथियों के बीच की तारीखों की एक सूची प्राप्त करें कैसे ठीक करें: "HAX काम नहीं कर रहा है और इम्यूलेटर इम्यूलेशन मोड में चलता है" जावा में नाम से एक वर्ग को इन्स्तांत करने का कोई तरीका है? एक्सएमएल – रूट पर डेटा अमान्य है रेल में ERB में <%, <% =, <% # और -%> के बीच अंतर क्या है? PHP में 2 तिथियों के बीच घंटे की संख्या की गणना करें मेरे कुकीज़ क्यों नहीं सेट हैं? Launchd.conf के माध्यम से पर्यावरण चर की स्थापना अब OS X Yosemite / El Capitan / macOS सिएरा में काम नहीं करती है? .htaccess रीडायरेक्ट को रीडायरेक्ट रूट यूआरएल को उपनिर्देशिका में डालें ऐप अस्वीकार किया गया, लेकिन मैं यूडीआईडी ​​का उपयोग नहीं करता जावा लॉजिकल ऑपरेटर शॉर्ट सर्किटिंग जावा विंडो में मेरी विंडो के बाहर माउस क्लिक निर्देशांक कैसे प्राप्त करें लूप अनुदेश धीमा क्यों है? इंटेल ने इसे कुशलतापूर्वक लागू नहीं किया? रूबी आईडीई क्या आप पसंद करते हैं? DOM में परिवर्तन का पता लगाएं

UIAlertController कस्टम फ़ॉन्ट, आकार, रंग

मैं अलर्ट्स दिखाने के लिए नए यूआईएलर्ट कंट्रोलर का उपयोग कर रहा हूं मेरे पास यह कोड है:

// nil titles break alert interface on iOS 8.0, so we'll be using empty strings UIAlertController *alert = [UIAlertController alertControllerWithTitle: title == nil ? @"": title message: message preferredStyle: UIAlertControllerStyleAlert]; UIAlertAction *defaultAction = [UIAlertAction actionWithTitle: cancelButtonTitle style: UIAlertActionStyleCancel handler: nil]; [alert addAction: defaultAction]; UIViewController *rootViewController = [UIApplication sharedApplication].keyWindow.rootViewController; [rootViewController presentViewController:alert animated:YES completion:nil]; 

अब मैं शीर्षक और संदेश फ़ॉन्ट, रंग, आकार और इतना बदलना चाहता हूं। ऐसा करने का सबसे अच्छा तरीका क्या है?

संपादित करें: मुझे संपूर्ण कोड सम्मिलित करना चाहिए मैंने UIView के लिए श्रेणी बनाई है कि मैं आईओएस संस्करण के लिए सही अलर्ट दिखा सकता हूं।

 @implementation UIView (AlertCompatibility) +( void )showSimpleAlertWithTitle:( NSString * )title message:( NSString * )message cancelButtonTitle:( NSString * )cancelButtonTitle { float iOSVersion = [[UIDevice currentDevice].systemVersion floatValue]; if (iOSVersion < 8.0f) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle: title message: message delegate: nil cancelButtonTitle: cancelButtonTitle otherButtonTitles: nil]; [alert show]; } else { // nil titles break alert interface on iOS 8.0, so we'll be using empty strings UIAlertController *alert = [UIAlertController alertControllerWithTitle: title == nil ? @"": title message: message preferredStyle: UIAlertControllerStyleAlert]; UIAlertAction *defaultAction = [UIAlertAction actionWithTitle: cancelButtonTitle style: UIAlertActionStyleCancel handler: nil]; [alert addAction: defaultAction]; UIViewController *rootViewController = [UIApplication sharedApplication].keyWindow.rootViewController; [rootViewController presentViewController:alert animated:YES completion:nil]; } } 

वेब के समाधान से एकत्रित समाधान "UIAlertController कस्टम फ़ॉन्ट, आकार, रंग"

निश्चित नहीं है कि यह निजी API / गुणों के विरुद्ध है, लेकिन आईओएस 8 पर केवीसी मेरे लिए काम करता है

 UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"Dont care what goes here, since we're about to change below" message:@"" preferredStyle:UIAlertControllerStyleActionSheet]; NSMutableAttributedString *hogan = [[NSMutableAttributedString alloc] initWithString:@"Presenting the great... Hulk Hogan!"]; [hogan addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:50.0] range:NSMakeRange(24, 11)]; [alertVC setValue:hogan forKey:@"attributedTitle"]; UIAlertAction *button = [UIAlertAction actionWithTitle:@"Label text" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){ //add code to make something happen once tapped }]; UIImage *accessoryImage = [UIImage imageNamed:@"someImage"]; [button setValue:accessoryImage forKey:@"image"]; 

रिकॉर्ड के लिए, उन प्राइवेसी एपीआई का उपयोग करते हुए, अलर्ट एक्शन के फ़ॉन्ट को भी बदलना संभव है। फिर से, यह आपको अस्वीकार कर दिया गया एप्लिकेशन हो सकता है, मैंने अभी तक ऐसा कोड सबमिट करने का प्रयास नहीं किया है

 let alert = UIAlertController(title: nil, message: nil, preferredStyle: .ActionSheet) let action = UIAlertAction(title: "Some title", style: .Default, handler: nil) let attributedText = NSMutableAttributedString(string: "Some title") let range = NSRange(location: 0, length: attributedText.length) attributedText.addAttribute(NSKernAttributeName, value: 1.5, range: range) attributedText.addAttribute(NSFontAttributeName, value: UIFont(name: "ProximaNova-Semibold", size: 20.0)!, range: range) alert.addAction(action) presentViewController(alert, animated: true, completion: nil) // this has to be set after presenting the alert, otherwise the internal property __representer is nil guard let label = action.valueForKey("__representer")?.valueForKey("label") as? UILabel else { return } label.attributedText = attributedText 

आप UIAlertController को टिंट रंग लगाने से बटन का रंग बदल सकते हैं।

आईओएस 9 पर, अगर विंडो टिंट का रंग कस्टम रंग पर सेट किया गया था, तो आपको चेतावनी पेश करने के तुरंत बाद टिंट रंग लागू करना होगा। अन्यथा टिंट का रंग आपकी कस्टम विंडो टिंट रंग पर रीसेट कर दिया जाएगा।

 // In your AppDelegate for example: window?.tintColor = UIColor.redColor() // Elsewhere in the App: let alertVC = UIAlertController(title: "Title", message: "message", preferredStyle: .Alert) alertVC.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: nil)) alertVC.addAction(UIAlertAction(title: "Ok", style: .Default, handler: nil)) // Works on iOS 8, but not on iOS 9 // On iOS 9 the button color will be red alertVC.view.tintColor = UIColor.greenColor() self.presentViewController(alert, animated: true, completion: nil) // Necessary to apply tint on iOS 9 alertVC.view.tintColor = UIColor.greenColor() 

आप इस कोड का उपयोग करके बटन का रंग बदल सकते हैं:

 alertC.view.tintColor = your color; 

शायद यह आपकी मदद करेगा

@ डुयूइस 2387 का एक स्विफ्ट अनुवाद। UIAlertController कुंजी का उपयोग करते हुए UIAlertController शीर्षक के रंग और फ़ॉन्ट को UIAlertController के माध्यम से सेट करने के लिए सिंटैक्स काम किया।

 let message = "Some message goes here." let alertController = UIAlertController( title: "", // This gets overridden below. message: message, preferredStyle: .Alert ) let okAction = UIAlertAction(title: "OK", style: .Cancel) { _ -> Void in } alertController.addAction(okAction) let fontAwesomeHeart = "\u{f004}" let fontAwesomeFont = UIFont(name: "FontAwesome", size: 17)! let customTitle:NSString = "I \(fontAwesomeHeart) Swift" // Use NSString, which lets you call rangeOfString() let systemBoldAttributes:[String : AnyObject] = [ // setting the attributed title wipes out the default bold font, // so we need to reconstruct it. NSFontAttributeName : UIFont.boldSystemFontOfSize(17) ] let attributedString = NSMutableAttributedString(string: customTitle as String, attributes:systemBoldAttributes) let fontAwesomeAttributes = [ NSFontAttributeName: fontAwesomeFont, NSForegroundColorAttributeName : UIColor.redColor() ] let matchRange = customTitle.rangeOfString(fontAwesomeHeart) attributedString.addAttributes(fontAwesomeAttributes, range: matchRange) alertController.setValue(attributedString, forKey: "attributedTitle") self.presentViewController(alertController, animated: true, completion: nil) 

यहां छवि विवरण दर्ज करें

Xcode 8 स्विफ्ट 3.0 में

 @IBAction func touchUpInside(_ sender: UIButton) { let alertController = UIAlertController(title: "", message: "", preferredStyle: .alert) //to change font of title and message. let titleFont = [NSFontAttributeName: UIFont(name: "ArialHebrew-Bold", size: 18.0)!] let messageFont = [NSFontAttributeName: UIFont(name: "Avenir-Roman", size: 12.0)!] let titleAttrString = NSMutableAttributedString(string: "Title Here", attributes: titleFont) let messageAttrString = NSMutableAttributedString(string: "Message Here", attributes: messageFont) alertController.setValue(titleAttrString, forKey: "attributedTitle") alertController.setValue(messageAttrString, forKey: "attributedMessage") let action1 = UIAlertAction(title: "Action 1", style: .default) { (action) in print("\(action.title)") } let action2 = UIAlertAction(title: "Action 2", style: .default) { (action) in print("\(action.title)") } let action3 = UIAlertAction(title: "Action 3", style: .default) { (action) in print("\(action.title)") } let okAction = UIAlertAction(title: "Ok", style: .default) { (action) in print("\(action.title)") } alertController.addAction(action1) alertController.addAction(action2) alertController.addAction(action3) alertController.addAction(okAction) alertController.view.tintColor = UIColor.blue alertController.view.backgroundColor = UIColor.black alertController.view.layer.cornerRadius = 40 present(alertController, animated: true, completion: nil) } 

उत्पादन

UIAlertController कस्टम फ़ॉन्ट, आकार और रंग

UIAppearance प्रोटोकॉल का उपयोग करें appearanceFont साथ अधिक हैक्स करें UIAlertAction लिए फ़ॉन्ट बदलने के लिए UIAlertAction

UILabel लिए एक श्रेणी बनाएं

UILabel + FontAppearance.h

 @interface UILabel (FontAppearance) @property (nonatomic, copy) UIFont * appearanceFont UI_APPEARANCE_SELECTOR; @end 

UILabel + FontAppearance.m

 @implementation UILabel (FontAppearance) - (void)setAppearanceFont:(UIFont *)font { if (self.tag == 1001) { return; } BOOL isBold = (self.font.fontDescriptor.symbolicTraits & UIFontDescriptorTraitBold); const CGFloat* colors = CGColorGetComponents(self.textColor.CGColor); if (self.font.pointSize == 14) { // set font for UIAlertController title self.font = [UIFont systemFontOfSize:11]; } else if (self.font.pointSize == 13) { // set font for UIAlertController message self.font = [UIFont systemFontOfSize:11]; } else if (isBold) { // set font for UIAlertAction with UIAlertActionStyleCancel self.font = [UIFont systemFontOfSize:12]; } else if ((*colors) == 1) { // set font for UIAlertAction with UIAlertActionStyleDestructive self.font = [UIFont systemFontOfSize:13]; } else { // set font for UIAlertAction with UIAlertActionStyleDefault self.font = [UIFont systemFontOfSize:14]; } self.tag = 1001; } - (UIFont *)appearanceFont { return self.font; } @end 

उपयोग:

जोड़ना

[[UILabel appearanceWhenContainedIn:UIAlertController.class, nil] setAppearanceFont:nil];

AppDelegate.m में इसे सभी UIAlertController लिए काम करना है

UIAppearance प्रोटोकॉल का उपयोग करें फ़ॉन्ट सेट करने के लिए उदाहरण – UILabel बढ़ाने के लिए एक श्रेणी बनाएं:

 @interface UILabel (FontAppearance) @property (nonatomic, copy) UIFont * appearanceFont UI_APPEARANCE_SELECTOR; @end @implementation UILabel (FontAppearance) -(void)setAppearanceFont:(UIFont *)font { if (font) [self setFont:font]; } -(UIFont *)appearanceFont { return self.font; } @end 

और इसके उपयोग:

 UILabel * appearanceLabel = [UILabel appearanceWhenContainedIn:UIAlertController.class, nil]; [appearanceLabel setAppearanceFont:[UIFont boldSystemFontOfSize:10]]; //for example 

परीक्षण और शैली UIAlertControllerStyleActionSheet साथ काम कर रहा है, लेकिन मुझे लगता है कि यह UIAlertControllerStyleAlert साथ भी काम करेगा।

PS आईओएस संस्करण की बजाय कक्षा की उपलब्धता के लिए बेहतर जांच:

 if ([UIAlertController class]) { // UIAlertController code (iOS 8) } else { // UIAlertView code (pre iOS 8) } 

मैं इसका उपयोग कर रहा हूँ।

 [[UIView appearanceWhenContainedIn:[UIAlertController class], nil] setTintColor:[UIColor blueColor]]; 

एक पंक्ति (ऐपडिलेगेट) जोड़ें और सभी UIAlertController के लिए काम करता है।

प्रस्तुत करने के बाद दृश्य पर टिंट रंग सेट करने में एक समस्या है; भले ही आप वर्तमान ViewController के पूरा होने वाले ब्लॉक में करें: एनिमेटेड: पूरा होने पर, यह बटन खिताब के रंग पर एक झिलमिलाना प्रभाव का कारण बनता है। यह मैला, अव्यावहारिक और पूरी तरह अस्वीकार्य है।

प्रस्तुत किए गए अन्य समाधान दृश्य पदानुक्रम पर स्थिर रहते हैं, जो कुछ ऐसा है जो एप्पल को घृणा करता है। IOS के भविष्य के रिलीज में विफल होने के लिए उन समाधानों की अपेक्षा करें

इस समस्या को सुलझाने और इसे हर जगह करने का एक निश्चित तरीका है, वह यूआईएलएआरएलएन्ट्रॉलर को एक श्रेणी जोड़कर और दृश्य स्विलिंग के माध्यम से है।

हैडर:

 // // UIAlertController+iOS9TintFix.h // // Created by Flor, Daniel J on 11/2/15. // #import <UIKit/UIKit.h> @interface UIAlertController (iOS9TintFix) + (void)tintFix; - (void)swizzledViewWillAppear:(BOOL)animated; @end 

कार्यान्वयन:

 // // UIAlertController+iOS9TintFix.m // // Created by Flor, Daniel J on 11/2/15. // #import "UIAlertController+iOS9TintFix.h" #import <objc/runtime.h> @implementation UIAlertController (iOS9TintFix) + (void)tintFix { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ Method method = class_getInstanceMethod(self, @selector(viewWillAppear:)); Method swizzle = class_getInstanceMethod(self, @selector(swizzledViewWillAppear:)); method_exchangeImplementations(method, swizzle);}); } - (void)swizzledViewWillAppear:(BOOL)animated { [self swizzledViewWillAppear:animated]; for (UIView *view in self.view.subviews) { if (view.tintColor == self.view.tintColor) { //only do those that match the main view, so we don't strip the red-tint from destructive buttons. self.view.tintColor = [UIColor colorWithRed:0.0 green:122.0/255.0 blue:1.0 alpha:1.0]; [view setNeedsDisplay]; } } } @end 

अपनी प्रोजेक्ट में एक .पीसी (प्रीकॉम्पिल्ड हेडर) जोड़ें और श्रेणी को शामिल करें:

 #import "UIAlertController+iOS9TintFix.h" 

सुनिश्चित करें कि आप अपने पीपी को परियोजना में ठीक से पंजीकृत करते हैं, और इसमें प्रत्येक श्रेणी में श्रेणी के तरीकों को शामिल किया जाएगा जो UIAlertController का उपयोग करता है

उसके बाद, आपके ऐप के प्रतिनिधियों ने फ़िनिश लॉन्चिंग विथ ऑप्शन सिस्टम के साथ, अपनी श्रेणी और कॉल आयात करें

 [UIAlertController tintFix]; 

और यह आपके ऐप के भीतर UIAlertController के प्रत्येक उदाहरण के लिए स्वचालित रूप से प्रसारित होगा, चाहे आपके कोड या किसी और के द्वारा लॉन्च किया गया हो

यह समाधान आईओएस 8.एक्स और आईओएस 9.एक्स दोनों के लिए काम करता है और टिंट परिवर्तन के बाद प्रस्तुति दृष्टिकोण की झिलमिलाहट का अभाव है। यह UIAlertController के उप-विचारों के दृश्य पदानुक्रम के संबंध में भी पूरी तरह अज्ञेयवादी है।

हैकिंग हैप्पी!

समाधान / आईओएस 9 के लिए हैक

  UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Test Error" message:@"This is a test" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) { NSLog(@"Alert View Displayed"); [[[[UIApplication sharedApplication] delegate] window] setTintColor:[UIColor whiteColor]]; }]; [alertController addAction:cancelAction]; [[[[UIApplication sharedApplication] delegate] window] setTintColor:[UIColor blackColor]]; [self presentViewController:alertController animated:YES completion:^{ NSLog(@"View Controller Displayed"); }]; 

मैंने अभी UIAlertController लिए एक प्रतिस्थापन पूरा कर लिया है यह जाने का एकमात्र समझदार तरीका है, मुझे लगता है:


पुराना

यहां स्विफ्ट में मेरी विधि है जो जवाबों से बहुत सारी जानकारी को मिस करती है

 func changeAlert(alert: UIAlertController, backgroundColor: UIColor, textColor: UIColor, buttonColor: UIColor?) { let view = alert.view.firstSubview().firstSubview() view.backgroundColor = backgroundColor view.layer.cornerRadius = 10.0 // set color to UILabel font setSubviewLabelsToTextColor(textColor, view: view) // set font to alert via KVC, otherwise it'll get overwritten let titleAttributed = NSMutableAttributedString( string: alert.title!, attributes: [NSFontAttributeName:UIFont.boldSystemFontOfSize(17)]) alert.setValue(titleAttributed, forKey: "attributedTitle") let messageAttributed = NSMutableAttributedString( string: alert.message!, attributes: [NSFontAttributeName:UIFont.systemFontOfSize(13)]) alert.setValue(messageAttributed, forKey: "attributedMessage") // set the buttons to non-blue, if we have buttons if let buttonColor = buttonColor { alert.view.tintColor = buttonColor } } func setSubviewLabelsToTextColor(textColor: UIColor, view:UIView) { for subview in view.subviews { if let label = subview as? UILabel { label.textColor = textColor } else { setSubviewLabelsToTextColor(textColor, view: subview) } } } 

यह पूरी तरह से कुछ स्थितियों में काम करता है, और दूसरों में यह कुल असफल (टिंट रंग अपेक्षित नहीं दिखता)।

आप बिना किसी बाहरी लाइब्रेरी का उपयोग कर पीएमएएलर्ट कंट्रोलर का इस्तेमाल कर सकते हैं, जहां आप सुपर अनुकूलन योग्य अलर्ट के साथ ऐप्पल के बिना अवांछित यूआईएल-एलर्ट कंट्रोलर का स्थान बदल सकते हैं।

Xcode 8, स्विफ्ट 3 और उद्देश्य-सी के साथ संगत

PMAlertController उदाहरण

विशेषताएं:

  • [x] हैडर देखें
  • [x] हैडर छवि (वैकल्पिक)
  • [x] शीर्षक
  • [x] विवरण संदेश
  • [x] अनुकूलन: फ़ॉन्ट, रंग, आयाम और अधिक
  • [x] 1, 2 बटन (क्षैतिज रूप से) या 3+ बटन (लंबवत रूप से)
  • [x] क्लोजर जब कोई बटन दबाया जाता है
  • [x] पाठ फ़ील्ड समर्थन
  • [x] UIAlertController के समान क्रियान्वयन
  • [x] कोकोपोड्स
  • [x] कार्थेज
  • [x] UIKit डायनेमिक्स के साथ एनिमेशन
  • [x] उद्देश्य-सी अनुकूलता
  • [x] स्विफ्ट 2.3 और स्विफ्ट 3 समर्थन

मैं शहरी आउटफिटर्स के लिए काम करता हूं हमारे पास ओपन सोर्स पॉड, URBNAlert , जो हमने अपने सभी ऐप में इस्तेमाल किया था। यह UIAlertController आधारित है, लेकिन उच्च अनुकूलन योग्य है

स्रोत यहाँ है: https://github.com/urbn/URBNAlert

या बस अपने पॉडफ़ाइल में URBNAlert रखकर फली द्वारा स्थापित करें

यहाँ कुछ नमूना कोड है:

 URBNAlertViewController *uac = [[URBNAlertViewController alloc] initWithTitle:@"The Title of my message can be up to 2 lines long. It wraps and centers." message:@"And the message that is a bunch of text. And the message that is a bunch of text. And the message that is a bunch of text."]; // You can customize style elements per alert as well. These will override the global style just for this alert. uac.alertStyler.blurTintColor = [[UIColor orangeColor] colorWithAlphaComponent:0.4]; uac.alertStyler.backgroundColor = [UIColor orangeColor]; uac.alertStyler.textFieldEdgeInsets = UIEdgeInsetsMake(0.0, 15.0, 0.0, 15.0); uac.alertStyler.titleColor = [UIColor purpleColor]; uac.alertStyler.titleFont = [UIFont fontWithName:@"Chalkduster" size:30]; uac.alertStyler.messageColor = [UIColor blackColor]; uac.alertStyler.alertMinWidth = @150; uac.alertStyler.alertMaxWidth = @200; // many more styling options available [uac addAction:[URBNAlertAction actionWithTitle:@"Ok" actionType:URBNAlertActionTypeNormal actionCompleted:^(URBNAlertAction *action) { // Do something }]]; [uac addAction:[URBNAlertAction actionWithTitle:@"Cancel" actionType:URBNAlertActionTypeCancel actionCompleted:^(URBNAlertAction *action) { // Do something }]]; [uac show]; 

कृपया इस श्रेणी को खोजें। मैं यूआईएलएर्ट एक्शन और यूआईएएलर्ट कंट्रोलर के फॉंट और रंग को बदलने में सक्षम हूं।

उपयोग:

 UILabel * appearanceLabel = [UILabel appearanceWhenContainedIn:UIAlertController.class, nil]; [appearanceLabel setAppearanceFont:yourDesireFont]]; 

एक बिट clunky, लेकिन यह मेरे लिए अभी पृष्ठभूमि और पाठ रंग सेट करने के लिए काम करता है मैंने इसे यहां पाया

 UIView * firstView = alertController.view.subviews.firstObject; UIView * nextView = firstView.subviews.firstObject; nextView.backgroundColor = [UIColor blackColor]; 

लाल रंग को रद्द करने जैसे एक बटन का रंग बदलने के लिए आप यूआईएलर्टएक्शनस्टाइल डाईस्ट्रक्चर नामक इस शैली की संपत्ति का उपयोग कर सकते हैं:

 let prompt = UIAlertController.init(title: "Reset Password", message: "Enter Your E-mail :", preferredStyle: .alert) let okAction = UIAlertAction.init(title: "Submit", style: .default) { (action) in //your code } let cancelAction = UIAlertAction.init(title: "Cancel", style: UIAlertActionStyle.destructive) { (action) in //your code } prompt.addTextField(configurationHandler: nil) prompt.addAction(okAction) prompt.addAction(cancelAction) present(prompt, animated: true, completion: nil); 

मैंने एक विधि उद्देश्य-सी बनाया है

 -(void)customAlertTitle:(NSString*)title message:(NSString*)message{ UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:nil message:nil delegate:nil cancelButtonTitle:@"NO" otherButtonTitles:@"YES", nil]; UIView *subView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 80)]; UILabel *titleLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 270, 50)]; titleLabel.text = title; titleLabel.font = [UIFont boldSystemFontOfSize:20]; titleLabel.numberOfLines = 2; titleLabel.textColor = [UIColor redColor]; titleLabel.textAlignment = NSTextAlignmentCenter; [subView addSubview:titleLabel]; UILabel *messageLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 30, 270, 50)]; messageLabel.text = message; messageLabel.font = [UIFont systemFontOfSize:18]; messageLabel.numberOfLines = 2; messageLabel.textColor = [UIColor redColor]; messageLabel.textAlignment = NSTextAlignmentCenter; [subView addSubview:messageLabel]; [alertView setValue:subView forKey:@"accessoryView"]; [alertView show]; } 

कोड Xcode 8.3.1 पर पूरी तरह से wokring। आप आवश्यकता के अनुसार अनुकूलित कर सकते हैं।