iOS中的表单按钮选项UIActionSheet常用方法整理

所属分类: 软件编程 / IOS 阅读数: 740
收藏 0 赞 0 分享

什么是操作表单?看图:

201661691629084.gif (355×703)

一看图就明白了,毋需多说。

复制代码 代码如下:

UIActionSheet* mySheet = [[UIActionSheet alloc] 
                           initWithTitle:@"ActionChoose"  
                           delegate:self  
                           cancelButtonTitle:@"Cancel" 
                           destructiveButtonTitle:@"Destroy" 
                           otherButtonTitles:@"OK", nil]; 
    [mySheet showInView:self.view]; 

与UIAlertView类似,我们也是在委托方法里处理按下按钮后的动作。记得在所委托的类加上UIActionSheetDelegate。
复制代码 代码如下:

- (void)actionSheetCancel:(UIActionSheet *)actionSheet{ 
    // 

- (void) actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{ 
    // 

-(void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex{ 
    // 

-(void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex{ 
    // 


看到那个红色的按钮没?那是ActionSheet支持的一种所谓的销毁按钮,对某户的某个动作起到警示作用,
比如永久性删除一条消息或者日志。如果你指定了一个销毁按钮他就会以红色高亮显示:
复制代码 代码如下:

mySheet.destructiveButtonIndex=1; 

与导航栏类似,操作表单也支持三种风格 :
复制代码 代码如下:

UIActionSheetStyleDefault              //默认风格:灰色背景上显示白色文字 
UIActionSheetStyleBlackTranslucent     //透明黑色背景,白色文字 
UIActionSheetStyleBlackOpaque          //纯黑背景,白色文字 

用法用例:
复制代码 代码如下:

mySheet.actionSheetStyle = UIActionSheetStyleBlackOpaque;

常用方法和属性

显示ActionSheet方法:
1.在一个视图内部显示,可以用showInView

复制代码 代码如下:

[mySheet showInView:self];

2.如果要将ActonSheet 与工具栏或者标签栏对齐,可以使用showFromToolBar或showFromTabBar
复制代码 代码如下:

[mySheet showFromToolBar:toolbar];
[mySheet showFromTabBar:tabbar];

解除操作表单
用户按下按钮之后,Actionsheet就会消失——除非应用程序有特殊原因,需要用户按下做个按钮。用dismiss方法可令表单消失:

复制代码 代码如下:

[mySheet dismissWithClickButtonIndex:1 animated:YES]; 
@property(nonatomic,copy) NSString *title;

设置标题

复制代码 代码如下:

@property(nonatomic) UIActionSheetStyle actionSheetStyle;

添加一个按钮,会返回按钮的索引

复制代码 代码如下:

- (NSInteger)addButtonWithTitle:(NSString *)title;

[/code]

获取按钮标题

复制代码 代码如下:

- (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逆向教程之跟踪函数调用详解

这篇文章主要给大家介绍了关于iOS逆向教程之跟踪函数调用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

iOS App连续闪退时上报crash日志的方法详解

iOS App 有时可能遇到启动必 crash 的绝境:每次打开 App 都闪退,无法正常使用App。下面这篇文章主要给大家介绍了iOS App连续闪退时上报crash日志的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
收藏 0 赞 0 分享

如何为Xcode添加删除整行、复制整行及在下方新建一行快捷键详解

xcode是苹果公司向开发人员提供的集成开发环境,开发者们经常会使用到,下面这篇文章主要给大家介绍了关于如何为Xcode添加删除整行、复制整行及在下方新建一行快捷键的相关资料,需要的朋友可以参考下。
收藏 0 赞 0 分享

iOS指纹登录(TouchID)集成方案详解

这篇文章主要为大家详细介绍了iOS指纹登录TouchID的集成方案,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

iOS动态验证码实现代码

本文通过实例代码给大家介绍了ios动态验证码的实现方法,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

iOS模块化开发浅析

本文给大家分析了IOS在模块发开发时候的相关注意点以及简单代码做了分享,有兴趣的朋友参考学习下。
收藏 0 赞 0 分享

iOS中封装.framework及使用的方法详解

这篇文章主要给大家介绍了关于iOS中封装.framework及使用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧。
收藏 0 赞 0 分享

WKWebView、WebView和JS的交互方式详解

这篇文章主要给大家介绍了关于WKWebView、WebView和JS的交互方式,文中通过示例代码介绍的非常详细,对各位iOS开发者们具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

ios wkwebview离线化加载h5资源解决方案

本篇文章主要介绍了ios wkwebview离线化加载h5资源解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

iOS实现带指引线的饼状图效果(不会重叠)

饼状图对大家来说应该都不陌生,下面这篇文章主要给大家介绍了关于iOS实现带指引线的饼状图效果(不会重叠)的相关资料,文章通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享
查看更多