你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> IOS8 UIAlertController 提示框

IOS8 UIAlertController 提示框

編輯:IOS開發綜合

IOS8中,Apple將UIActionSheet和UIAlertView整合成一個接口UIAlertController。

原來的是一個view,展示在window視圖之上。現在改成了controller,展示方式變成由當前的controller直接present出來。

 

  1. UIAlertController *alert = [UIAlertController alertControllerWithTitle:@This is Title
  2. message:@This is message
  3. preferredStyle:UIAlertControllerStyleAlert];
  4. [alert addAction:[UIAlertAction actionWithTitle:@Action 1 (Default Style)
  5. style:UIAlertActionStyleDefault
  6. handler:^(UIAlertAction *action) {
  7. NSLog(@Action 1 Handler Called);
  8. }]];
  9. [alert addAction:[UIAlertAction actionWithTitle:@Action 2 (Cancel Style)
  10. style:UIAlertActionStyleCancel
  11. handler:^(UIAlertAction *action) {
  12. NSLog(@Action 2 Handler Called);
  13. }]];
  14. [alert addAction:[UIAlertAction actionWithTitle:@Action 3 (Destructive Style)
  15. style:UIAlertActionStyleDestructive
  16. handler:^(UIAlertAction *action) {
  17. NSLog(@Action 3 Handler Called);
  18. }]];
  19. [self presentViewController:alert animated:YES completion:nil]; 通過addAction接口添加具體按鈕,設置按鈕title、style和使用block方式直接加入按鈕響應接口。

    style有以下幾種:

    [objc]
  20. UIAlertController 提示框> 
  21. UIAlertController 提示框>
    1. typedef NS_ENUM(NSInteger, UIAlertActionStyle) {
    2. UIAlertActionStyleDefault = 0,
    3. UIAlertActionStyleCancel,
    4. UIAlertActionStyleDestructive
    5. } NS_ENUM_AVAILABLE_IOS(8_0);

      與原來的UIActionSheet和UIAlertView比較:

      1、視覺上沒有改變,跟之前的樣式保持一致;

      2、改為controller方式後,控件的生命周期能夠更好的控制;方便的彈出和收起

      3、當前controller彈出UIAlertController後,再次present controller必須在UIAlertController的基礎上present。present後,UIAlertController會被蓋住。而之前的UIActionSheet和UIAlertView由於是add在window上面的,當在彈出他們的controller基礎上再present controller的話,UIActionSheet和UIAlertView彈框仍然保留在最上方。

      4、修改為controller方式後,接口更加簡單,而且按鈕響應方式更加明了簡介,不需要在設置delegate和實現響應的回調等。

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved