ios--计时器演示样例:一闪一闪亮晶晶(动画)
本演示样例实现的动画:UIView定时消失随后又闪现,即一闪一闪的动画
所採用的技术:定时器(NSTimer) + 动画(beginAnimations/commitAnimations)
详细实现步骤:
第一步:定时器部分全然复制上个演示样例:http://blog.csdn.net/wanggsx918/article/details/38269919
1、在.h文件里定义一个变量和一个Method:
@interface xxxViewController : UIViewController
{
NSTimer *showTimer;//计时器变量
}
//要运行的方法
-(void)handleScrollTimer:(NSTimer *)theTimer; -(void)startTimer;
2、在.m文件里打开与关闭定时器,以及绑定Method:
- (void)viewDidAppear:(BOOL)animated
{
///页面显示完成的时候运行
//又一次打开定时器
[showTimer setFireDate:[NSDate distantPast]];
} -(void)startTimer
{
//定义时间计数器:每隔2秒运行一次handleScrollTimer方法
showTimer = [NSTimer scheduledTimerWithTimeInterval:2.0
target:self
selector:@selector(handleScrollTimer:)
userInfo:nil
repeats:true];
[[NSRunLoop currentRunLoop] addTimer:showTimer forMode:NSDefaultRunLoopMode];
} ///页面消失完成的时候运行
-(void)viewDidDisappear:(BOOL)animated
{
//关闭定时器
[showTimer setFireDate:[NSDate distantFuture]];
}
3、启动计时器:
//开启线程
[self performSelectorOnMainThread:@selector(startTimer) withObject:nil waitUntilDone:YES];
第二步:动画部分
在handleScollTimer:方法中写动画代码:
-(void)handleScrollTimer:(NSTimer *)theTimer
{
scanLine.alpha = 1.0;
[UIView beginAnimations:@"scanLine" context:nil];
[UIView setAnimationDuration:0.8];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
scanLine.alpha = 0.05;
[UIView commitAnimations];
}
ios--计时器演示样例:一闪一闪亮晶晶(动画)的更多相关文章
- JavaFX 简单3D演示样例
从Java8開始,在JavaFX中便添加了3D部分的内容,包含Camera,Material,Light,Shape3D等基础内容. 当然,JavaFX 3D应该是OpenJFX里眼下正在补充和完好的 ...
- Swift语言 简明基础 代码演示样例
开发环境: Mac.Xcode6.0 下面内容均可创建ios common line项目来測试 1.Hello World演示样例 使用xcode创建新的common line项目,查看主文件main ...
- AppCan移动应用开发平台新增9个超有用插件(内含演示样例代码)
使用AppCan平台进行移动开发.你所须要具备的是Html5+CSS +JS前端语言基础.此外.Hybrid混合模式应用还需结合原生语言对功能模块进行封装,对于没有原生基础的开发人员,怎样实现App里 ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- java 覆盖hashCode()深入探讨 代码演示样例
java 翻盖hashCode()深入探讨 代码演示样例 package org.rui.collection2.hashcode; /** * 覆盖hashcode * 设计HashCode时最重要 ...
- 模式识别 - 处理多演示样例学习(MIL)特征(matlab)
处理多演示样例学习(MIL)特征(matlab) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27206325 多演示样例学习( ...
- java并行调度框架封装及演示样例
參考资料: 阿里巴巴开源项目 CobarClient 源代码实现. 分享作者:闫建忠 分享时间:2014年5月7日 ---------------------------------------- ...
- Java连接redis的使用演示样例
Java连接redis的使用演示样例 Redis是开源的key-value存储工具,redis通经常使用来存储结构化的数据,由于redis的key能够包括String.hash.listset和sor ...
- Introspector(内省)简单演示样例 与 简单应用
简单演示样例: package com.asdfLeftHand.test; import java.beans.BeanDescriptor; import java.beans.BeanInfo; ...
随机推荐
- Java API操作ZooKeeper
创建会话 package org.zln.zk; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.Watch ...
- ci动态设置config配置
$this->config->set_item('cookie', 'item_value');echo $this->config->item('cookie');
- Python学习笔记(Django篇)——1、环境搭建篇(如何在Pycharm中配置Python和Django)
1.准备好以下东东,并且按照先后顺序进行安装: Python 3.6 (64-bit) Django-1.11.tar.gz pycharm-community-2016.3.2.exe 安装好了 ...
- Python之面向对象:闭包和装饰器
一.闭包 1. 如果一个函数定义在另一个函数的作用域内,并且引用了外层函数的变量,则该函数称为闭包. def outter(): name='python' def inner(): print na ...
- forEach循环dom元素
//让ie8支持foreach if (typeof Array.prototype.forEach != 'function') { Array.prototype.forEach = functi ...
- 转:Android 的进程与线程总结
当一个Android应用程序组件启动时候,如果此时这个程序的其他组件没有正在运行,那么系统会为这个程序 以单一线程的形式启动一个新的Linux 进程. 默认情况下,同一应用程序下的所有组件都运行再相同 ...
- uoj Goodbye Dingyou Round 题解
2.14 晚上的比赛, 现在改好了四题, 还差提答. 在这补个题解 新年的xor Description 给你 \(n\) , 然后要你构造 \([L, R], L<R\) 使得区间异或和为 \ ...
- 最全面的Android Webview详解
转自:最全面的Android Webview详解 前言 现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 那么这种该如何实现呢?其实这是 ...
- [bzoj1433][ZJOI2009]假期的宿舍——二分图
题目大意 传送门 题解 显然是二分图匹配. 用一些方法建图就好了. 要注意的是: 本题有多组数据!!! 初始化一定要注意!!! 代码 #include <bits/stdc++.h> us ...
- sunos 修改shell为bash
root:x:::Super-User:/:/sbin/sh 改为 root:x:::Super-User:/:/usr/bin/bash 修改/增加 .profile 文件,在¥HOME路径下 ex ...