服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - IOS - iOS中的表单按钮选项UIActionSheet常用方法整理

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

2021-01-20 16:23珲少 IOS

UIActionSheet经常被用来制作各种弹出的选项,这里我们就来看一下iOS中的表单按钮选项UIActionSheet常用方法整理,需要的朋友可以参考下

什么是操作表单?看图:

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

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

复制代码 代码如下:

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;


点击按钮后,视图已经收回时触发的方法

延伸 · 阅读

精彩推荐
  • IOSiOS常见的几个修饰词深入讲解

    iOS常见的几个修饰词深入讲解

    这篇文章主要给大家介绍了关于iOS常见的几个修饰词的相关资料,iOS修饰词包括assign、weak、strong、retain、copy、nonatomic、atomic、readonly、readwrite,文中通过示...

    郡王丶千夜7422021-05-10
  • IOS谈一谈iOS单例模式

    谈一谈iOS单例模式

    这篇文章主要和大家谈一谈iOS中的单例模式,单例模式是一种常用的软件设计模式,想要深入了解iOS单例模式的朋友可以参考一下...

    彭盛凇11872021-01-19
  • IOSiOS逆向教程之logify跟踪方法的调用

    iOS逆向教程之logify跟踪方法的调用

    这篇文章主要给大家介绍了关于iOS逆向教程之logify跟踪方法调用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学...

    Mr.Guo11472021-04-28
  • IOSIOS网络请求之AFNetWorking 3.x 使用详情

    IOS网络请求之AFNetWorking 3.x 使用详情

    本篇文章主要介绍了IOS网络请求之AFNetWorking 3.x 使用详情,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    总李写代码6892021-03-04
  • IOSiOS10 Xcode8适配7个常见问题汇总

    iOS10 Xcode8适配7个常见问题汇总

    这篇文章主要为大家详细汇总了iOS10 Xcode8适配7个常见问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    索马里猫10332021-02-01
  • IOSiOS中时间与时间戳的相互转化实例代码

    iOS中时间与时间戳的相互转化实例代码

    这篇文章主要介绍了iOS中时间与时间戳的相互转化实例代码,非常具有实用价值,需要的朋友可以参考下。...

    张无忌!4812021-03-09
  • IOSxcode8提交ipa失败无法构建版本问题的解决方案

    xcode8提交ipa失败无法构建版本问题的解决方案

    xcode升级到xcode8后发现构建不了新的版本。怎么解决呢?下面小编给大家带来了xcode8提交ipa失败无法构建版本问题的解决方案,非常不错,一起看看吧...

    Cinna丶7542021-02-03
  • IOSiOS APP实现微信H5支付示例总结

    iOS APP实现微信H5支付示例总结

    这篇文章主要介绍了iOS APP实现微信H5支付示例总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下...

    一张小A11332021-06-01