iOS之UI--指示器HUD的创建和设置

指示器的创建和设置 渐变动画

描述:

使用label就能制作指示器,原理:就是让label以动画的形式慢慢显示和消失
最好是半透明的
指示器有时候也被称为:HUD,遮盖,蒙版

思路步骤:

1、先在storyboard的View最前面添加UILabel,或者是自定义代码添加Label
 (下面我用的是自定义UILable)
2、然后在label的透明度(alpha,值:0~1)进行动画渐变设置
 (另外:hidden是不支持动画的,值:YES/NO,从值来看是没有变化的区间,就两个值)

也可以进源码查看alpha属性和hidden属性,你会发现注释讲明了alpha能用于动画,而hidden不行。

  • 方式1:头尾式
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2.0];

/* 需要执行动画的代码 */

[UIView commitAnimations];
  • 方式2:block式
[UIView animateWithDuration:2.0 delay:1.0 options:kNilOptions animations:^{
 /* 需要执行动画的代码 */ /* 注意这里的options不能用nil,要用kNilOptions */
} completion:nil]

// 1s后,再执行动画(动画持续2s)

实现:

首先我们来实现这个小实例:


最后使用第二种Block的方法:


上面的实例进行了优化和改进,将控件的所有方法都封装进自定义控件内部了,另外还添加了背景图片,以显示HUD的透明效果以及前景色字体不透明的效果,还能显示狗哦:


实现代码下载 链接: http://pan.baidu.com/s/1nt2EI2d 密码: havn

后来,我又对指示器进行了进一步的改进,其实就是加了一点小创意:

时间: 2025-01-01 03:24:35

iOS之UI--指示器HUD的创建和设置的相关文章

iOS开发UI篇—使用storyboard创建导航控制器以及控制器的生命周期

一.基本过程 新建一个项目,系统默认的主控制器继承自UIViewController,把主控制器两个文件删掉. 在storyboard中,默认的控制器是View Controller,而我们需要的是导航控制器,那么就把系统的给删掉,拖一个导航控制器进来,导航控制器中默认的第一个子控制器是一个tableview controller,这里不需要,把它删掉,重新拖三个View Controller到界面上进行连线,简单的设置就可以了. 按钮连线,按住ctrl,右边界面选择push. 完成基本设置后的

iOS中使用NSProgress类来创建UI进度条的方法详解_IOS

一.引言 在iOS7之前,系统一直没有提供一个完整的框架来描述任务进度相关的功能.这使得在开发中进行耗时任务进度的监听将什么麻烦,在iOS7之后,系统提供了NSProgress类来专门报告任务进度. 二.创建单任务进度监听器 单任务进度的监听是NSProgress最简单的一种运用场景,我们来用定时器模拟一个耗时任务,示例代码如下: @interface ViewController () { NSProgress * progress; } @end @implementation ViewCo

iOS开发UI篇—程序启动原理和UIApplication

一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序. (2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示. (3)通过[UIApplicationsharedApplication]可以获得这个单例对象 (4) 一个iOS程序启动后创建的第一个对象就是UIApplication对象,且只有一个(通过代码获

IOS之--UI进阶--多控制器管理第一天

01-项目中常见的文件(LaunchScreen) Xcode5 框架是苹果事先已经导入进去的.在项目的结构当中就能够看到导入的框架. Xcode6 会自动导入一些觉见的框架.在项目结构当中,看不到已经导入的框架. LaunchScreen.xib:用来设置启动界面. Xcode7 会自动导入一些觉见的框架.在项目结构当中,看不到已经导入的框架. LaunchScreen.storyBoard LaunchScreen原理: 会自动加载LaunchScreen是因为在Target当中,指定了La

iOS开发UI篇—UIWindow简单介绍

一.简单介绍 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow iOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了 一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow.也就说,没有UIWindow,就看不见任何UI界面 补充:UIWindow是创建的第一个视图控件(创建的第一个对象是UIapplication)如下图:

iOS开发UI篇—UITableviewcell的性能优化和缓存机制

iOS开发UI篇-UITableviewcell的性能问题 一.UITableviewcell的一些介绍 UITableView的每一行都是一个UITableViewCell,通过dataSource的 tableView:cellForRowAtIndexPath:方法来初始化每⼀行 UITableViewCell内部有个默认的子视图:contentView,contentView是UITableViewCell所显示内容的父视图,可显示一些辅助指示视图 辅助指示视图的作⽤是显示一个表示动作的

ios关于不会用sbjson创建json,请教

问题描述 ios关于不会用sbjson创建json,请教 请问这种形式的json怎么创建 ,在下新手请给demo事例 ,项目中有sbjson库 {"code":"1","desc":[{"col_0007":"李玉华", "col_0023":"已回单","col_0025":"800.00", "col_0027&q

iOS开发UI篇—Quartz2D(自定义UIImageView控件)

一.实现思路 Quartz2D最大的用途在于自定义View(自定义UI控件),当系统的View不能满足我们使用需求的时候,自定义View. 使用Quartz2D自定义View,可以从模仿系统的ImageView的使用开始. 需求驱动开发:模仿系统的imageview的使用过程 1.创建 2.设置图片 3.设置frame 4.把创建的自定义的view添加到界面上(在自定义的View中,需要一个image属性接收image图片参数->5). 5.添加一个image属性(接下来,拿到image之后,应

iOS 7 UI 过渡指南 - 支持续 iOS 6(iOS 7 UI Transition Guide - Supporting iOS 6)

iOS 7 UI Transition Guide Preparing for Transition Before You Start Scoping the Project Supporting iOS 6 Updating the UI Appearance and Behavior Bars and Bar Buttons Content Views Controls Temporary Views Supporting iOS 6 If business reasons require