標籤:
一、初始化方法
- (instancetype)initWithTitle:(NSString *)title delegate:(id<UIActionSheetDelegate>)delegate cancelButtonTitle:(NSString *)cancelButtonTitle destructiveButtonTitle:(NSString *)destructiveButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ...;
參數說明:
title:視表徵圖題
delegate:設定代理
cancelButtonTitle:取消按鈕的標題
destructiveButtonTitle:特殊標記的按鈕的標題
otherButtonTitles:其他按鈕的標題
二、常用方法和屬性介紹
@property(nonatomic,copy) NSString *title;
設定標題
@property(nonatomic) UIActionSheetStyle actionSheetStyle;
設定風格,枚舉如下:
?
| 123456 |
typedef NS_ENUM(NSInteger, UIActionSheetStyle) { UIActionSheetStyleAutomatic = -1, UIActionSheetStyleDefault = UIBarStyleDefault, UIActionSheetStyleBlackTranslucent = UIBarStyleBlackTranslucent, UIActionSheetStyleBlackOpaque = UIBarStyleBlackOpaque,}; |
- (NSInteger)addButtonWithTitle:(NSString *)title;
添加一個按鈕,會返回按鈕的索引
- (NSString *)buttonTitleAtIndex:(NSInteger)buttonIndex;
擷取按鈕標題
@property(nonatomic,readonly) NSInteger numberOfButtons;
擷取按鈕數量
@property(nonatomic) NSInteger cancelButtonIndex;
設定取消按鈕的索引值
@property(nonatomic) NSInteger destructiveButtonIndex;
設定特殊標記
@property(nonatomic,readonly,getter=isVisible) BOOL visible;
視圖當前是否可見
下面是幾種彈出方式,會根據風格不同展現不同的方式
- (void)showFromToolbar:(UIToolbar *)view;
- (void)showFromTabBar:(UITabBar *)view;
- (void)showFromBarButtonItem:(UIBarButtonItem *)item animated:(BOOL)animated ;
- (void)showFromRect:(CGRect)rect inView:(UIView *)view animated:(BOOL)animated ;
- (void)showInView:(UIView *)view;
- (void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated;
使用代碼將視圖收回
三、UIActionSheet代理方法
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex;
點擊按鈕時觸發的方法
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet;
視圖將要彈出時觸發的方法
- (void)didPresentActionSheet:(UIActionSheet *)actionSheet;
視圖已經彈出式觸發的方法
- (void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex;
點擊按鈕後,視圖將要收回時觸發的方法
- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex;
點擊按鈕後,視圖已經收回時觸發的方法
IOS中UIActionSheet使用方法詳解