iOS:风火轮活动刷新视图控件UIActivityIndicatorView的详细使用

简介:

动态风火轮视图控件:UIActivityIndicatorView

 
介绍:它是一种类似于风火轮旋转的视图控件,可用作刷新数据时显示加载过程所用,继承自UIView。
 
类型:

typedef NS_ENUM(NSInteger, UIActivityIndicatorViewStyle) {

    UIActivityIndicatorViewStyleWhiteLarge,  //大的白色类型

    UIActivityIndicatorViewStyleWhite,         //白色类型

    UIActivityIndicatorViewStyleGray,         //灰色类型

};

 

属性:

@property(nonatomic) UIActivityIndicatorViewStyle activityIndicatorViewStyle; //类型

@property(nonatomic) BOOL hidesWhenStopped;      //当停止时是否隐藏      

@property (readwrite, nonatomic, retain) UIColor *color ; //颜色

 

方法:

- (instancetype)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style;  //创建实例的初始化方法

- (void)startAnimating; //开始动画

- (void)stopAnimating; //停止动画

- (BOOL)isAnimating;  //是否正在动画

@end

 

实例如下:在方法- (void)viewDidLoad {  [super viewDidLoad];....}中添加代码如下

    //创建活动视图控件实例

1     UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];

 

    //设置该实例的位置

1     activityView.center = CGPointMake(170, 200);

 

    //设置控制器视图背景颜色

1     [self.view setBackgroundColor:[UIColor redColor]];

   

    //添加该控件到视图中

1     [self.view addSubview:activityView];

 

    //开始动画

1     [activityView startAnimating];

 

    //设置动画停止时是否隐藏

1     activityView.hidesWhenStopped = YES;

 

    //使用定时器,规定3秒时动画停止

1     [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(test:) userInfo:activityView repeats:NO];

 

    //开始应用程序的网络活动刷新动画

1     UIApplication *app = [UIApplication sharedApplication];
2     [app setNetworkActivityIndicatorVisible:YES];

 

#pragma mark -test定时器事件

复制代码
-(void)test:(NSTimer*)sender
{
    //取出该控件实例
    UIActivityIndicatorView *activityView = [sender userInfo];
    
    //停止动画
    [activityView stopAnimating];
    
    //停止应用程序的网络活动刷新动画
    UIApplication *app = [UIApplication sharedApplication];
    [app setNetworkActivityIndicatorVisible:NO];
}
复制代码

 

演示结果:

两个风火轮都开始动画:网络旁边一个,视图中一个                         两个风火轮都在定时器的时间点同时停止动画:

       

程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!
分类:  iOS初级

本文转自当天真遇到现实博客园博客,原文链接:http://www.cnblogs.com/XYQ-208910/p/4849769.html,如需转载请自行联系原作者
相关文章
|
9月前
|
iOS开发
iOS UITableViewCell刷新某些行的cell或section
iOS UITableViewCell刷新某些行的cell或section
97 0
|
缓存 iOS开发
iOS小技能:解决TableVIew刷新数据带来的界面跳动问题
iOS小技能:解决TableVIew刷新数据带来的界面跳动问题
1794 0
iOS小技能:解决TableVIew刷新数据带来的界面跳动问题
|
iOS开发
iOS 多个滚动控件嵌套Demo
iOS 多个滚动控件嵌套Demo
92 0
|
iOS开发
iOS 常用的 上下左右 拉刷新控件
iOS 常用的 上下左右 拉刷新控件
123 0
|
iOS开发 开发者
代码显示苹果 iOS 16.2 将允许 iPhone 更频繁刷新“实时活动”,但也更加耗电
代码显示苹果 iOS 16.2 将允许 iPhone 更频繁刷新“实时活动”,但也更加耗电
|
iOS开发
iOS短信验证码控件,自动输入回调两次解决办法
iOS短信验证码控件,自动输入回调两次解决办法
538 0
|
iOS开发 开发者
代码显示苹果 iOS 16.2 将允许 iPhone 更频繁刷新“实时活动”,但也更加耗电
10 月 26 日消息,随着本周 iOS 16.1 正式版的发布,苹果推出了实时活动 —— 更多第三方应用程序可提供有用的信息。有了“实时活动”功能,用户可以随时获知常用 App 的最新信息。无需解锁设备,即可在锁定屏幕上关注出租车的到达时间、球赛最新比分,或者下一个闹钟提醒。在 iPhone 14 Pro 上,如果解锁设备,“实时活动”信息还会出现在灵动岛。
|
iOS开发
IOS的UITableView控件简单使用
IOS的UITableView控件简单使用
191 0
|
iOS开发
iOS开发 - 写一个刷新的控件(未封装,适合新手学习,查看原理)
iOS开发 - 写一个刷新的控件(未封装,适合新手学习,查看原理)
164 0
iOS开发 - 写一个刷新的控件(未封装,适合新手学习,查看原理)
|
安全 iOS开发
iOS小技能:下拉刷新控件的适配
1. 下拉顶部背景色设置: 往tableView的父控件添加拉伸背景视图 2. present 半屏适配 iOS13 modalPresentationStyle属性默认不是全屏样式`UIModalPresentationFullScreen`,而是半屏样式,需要根据需求手动设置。 present 半屏,会导致列表下拉刷新失效。
240 0
iOS小技能:下拉刷新控件的适配

热门文章

最新文章

  • 1
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 2
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 3
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 4
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
  • 5
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
  • 6
    iOS各个证书生成细节
  • 7
    iOS|记一名 iOS 开发新手的前两次 App 审核经历
  • 8
    iOS:应用程序的线程安全性
  • 9
    iOS开发-UIScrollView原理
  • 10
    iOS - Swift NSPoint 位置
  • 1
    iOS|记一名 iOS 开发新手的前两次 App 审核经历
    9
  • 2
    iOS各个证书生成细节
    22
  • 3
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
    118
  • 4
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    40
  • 5
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    55
  • 6
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    46
  • 7
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    40
  • 8
    uniapp开发ios打包Error code = -5000 Error message: Error: certificate file(p12) import failed!报错问题如何解决
    152
  • 9
    【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app
    310
  • 10
    app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
    106