IOS中UIActionSheet使用方法詳解
一、初始化方法
- (instancetype)initWithTitle:(NSString *)title delegate:(id)delegate cancelButtonTitle:(NSString *)cancelButtonTitle destructiveButtonTitle:(NSString *)destructiveButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ...;
參數(shù)說(shuō)明:
title:視圖標(biāo)題
delegate:設(shè)置代理
cancelButtonTitle:取消按鈕的標(biāo)題
destructiveButtonTitle:特殊標(biāo)記的按鈕的標(biāo)題
otherButtonTitles:其他按鈕的標(biāo)題
二稠茂、常用方法和屬性介紹
@property(nonatomic,copy) NSString *title;
設(shè)置標(biāo)題
@property(nonatomic) UIActionSheetStyle actionSheetStyle;
設(shè)置風(fēng)格谈宛,枚舉如下:
typedef NS_ENUM(NSInteger, UIActionSheetStyle) {
UIActionSheetStyleAutomatic ? ? ? ?= -1,
UIActionSheetStyleDefault ? ? ? ? ?= UIBarStyleDefault,
UIActionSheetStyleBlackTranslucent = UIBarStyleBlackTranslucent,
UIActionSheetStyleBlackOpaque ? ? ?= UIBarStyleBlackOpaque,
};
- (NSInteger)addButtonWithTitle:(NSString *)title;
添加一個(gè)按鈕次哈,會(huì)返回按鈕的索引
- (NSString *)buttonTitleAtIndex:(NSInteger)buttonIndex;
獲取按鈕標(biāo)題
@property(nonatomic,readonly) NSInteger numberOfButtons;
獲取按鈕數(shù)量
@property(nonatomic) NSInteger cancelButtonIndex;
設(shè)置取消按鈕的索引值
@property(nonatomic) NSInteger destructiveButtonIndex;
設(shè)置特殊標(biāo)記
@property(nonatomic,readonly,getter=isVisible) BOOL visible;
視圖當(dāng)前是否可見
下面是幾種彈出方式,會(huì)根據(jù)風(fēng)格不同展現(xiàn)不同的方式
- (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;
點(diǎn)擊按鈕時(shí)觸發(fā)的方法
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet;
視圖將要彈出時(shí)觸發(fā)的方法
- (void)didPresentActionSheet:(UIActionSheet *)actionSheet;
視圖已經(jīng)彈出式觸發(fā)的方法
- (void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex;
點(diǎn)擊按鈕后窑滞,視圖將要收回時(shí)觸發(fā)的方法
- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex;
點(diǎn)擊按鈕后,視圖已經(jīng)收回時(shí)觸發(fā)的方法