iOS 8及以后版本 如何创建UIAlertView?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 8及以后版本 如何创建UIAlertView?相关的知识,希望对你有一定的参考价值。

1.

Important: UIAlertView is deprecated in ios 8. (Note that UIAlertViewDelegate is also deprecated.) To create and manage alerts in iOS 8 and later, instead use UIAlertController with a preferredStyle of UIAlertControllerStyleAlert.  

//UIAlertView和UIAlertViewDelegate(代理被给用block回调,更简单)在iOS8及以后版本中被弃用,改用风格为UIAlertControllerStyleAlertUIAlertController来替代。

2.

In apps that run in versions of iOS prior to iOS 8, use the UIAlertView class to display an alert message to the user. An alert view functions similar to but differs in appearance from an action sheet (an instance of UIActionSheet).

//iOS8以前版本中UIAlertView和UIActionSheet有着类似的功能,却通过不同的类来生成。言外之意,iOS8以后版本,UIAlertView和UIActionSheet两种alert页面都将通过UIAlertController来生成。

3.

 iOS 8以前版本  如何创建UIAlertView ? 

OBJECTIVE-C

- (instancetype)initWithTitle:(NSString *)title
                      message:(NSString *)message
                     delegate:(id)delegate
            cancelButtonTitle:(NSString *)cancelButtonTitle
            otherButtonTitles:(NSString *)otherButtonTitles,
...

4.

 iOS 8及以后版本  如何创建UIAlertView ?

  1. UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"My Alert"
  2. message:@"This is an alert.” preferredStyle:UIAlertControllerStyleAlert];
  3. UIAlertAction* defaultAction = [UIAlertAction actionWithTitle:@"OK”style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}];
  4. [alert addAction:defaultAction];
  5. [self presentViewController:alert animated:YES completion:nil];

5.

 iOS 8以前版本  如何创建UIActionSheet ?

- (instancetype)initWithTitle:(NSString *)title

                     delegate:(id<UIActionSheetDelegate>)delegate

            cancelButtonTitle:(NSString *)cancelButtonTitle

       destructiveButtonTitle:(NSString *)destructiveButtonTitle

            otherButtonTitles:(NSString *)otherButtonTitles

...

6.

iOS 8及以后版本  如何创建UIActionSheet ?

    UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"苍老师你好" message:@"听说你的新片被下载了9999次" preferredStyle:UIAlertControllerStyleAlert];

    

    UIAlertAction *action1 = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

        self.lblTarget.text = [NSString stringWithFormat:@"点击AlertView确定按钮后,产生随机数"];

        self.lblTarget.textColor = [UIColor redColor];

    }]; //点击按钮后通过block回调执行此方法,故没必要再使用代理了

    

    UIAlertAction *action2 = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {

    }]; /*UIAlertActionStyleCancel 蓝色字体,加粗;

         UIAlertActionStyleDefault 字体蓝色,不加粗;

         UIAlertActionStyleDestructive字体红色,不加粗;

         */

    

    [alertVC addAction:action1];

    [alertVC addAction:action2];

    

    [self presentViewController:alertVC animated:YES completion:nil];

 

 

 

 

以上是关于iOS 8及以后版本 如何创建UIAlertView?的主要内容,如果未能解决你的问题,请参考以下文章

iOS APP上架及版本迭代

iOS - UIAlertController三种显示提示框代码

Elasticsearch:使用最新的 Elasticsearch Java client 8.0 来创建索引并搜索

Elasticsearch:使用最新的 Elasticsearch Java client 8.0 来创建索引并搜索

不同iOS版本做代码适配__IPHONE_OS_VERSION_MAX_ALLOWED 和 __IPHONE_8_0等专业术语

你如何解除 UISearchController ? (iOS 8 及以下)