iOS UI-Lable标签、NStimer定时器和RunLoop超级死循环
// 标签UILable -显示文字
// 1.创建标签
UILabel *lable = [[UILabel alloc] init];
// 2.设置标签的坐标和大小
[lable setFrame:CGRectMake(,, , )];
// 3.标签内容
lable.text = @"";
// 设置字体
lable.font = [UIFont systemFontOfSize:];
// 设置字体颜色
lable.textColor = [UIColor blackColor];
// 设置内容换行
lable.numberOfLines = ;
//设置圆角
lable.layer.cornerRadius = ;
lable.layer.masksToBounds = NO;
// 设置标签内容居中
lable.textAlignment = NSTextAlignmentCenter;
// 设置标签背景
lable.backgroundColor = [UIColor blackColor];
// 加载图片
UIImageView *tempView = [[UIImageView alloc] init];
[tempView setFrame:CGRectMake(, , , )];
tempView.image = [UIImage imageNamed:@"1.png"];
// 4.在当前视图之上加载子视图
[self.view addSubview:lable];
[lable addSubview:tempView];
#import "ViewController.h" @interface ViewController ()
{
NSTimer *timer;
NSInteger length;
}
@property (weak, nonatomic) IBOutlet UILabel *lable; @end @implementation ViewController -(void) lableMove
{
if (self.lable.frame.origin.y>) {
length = -;
}
else if (self.lable.frame.origin.y<)
{
length = ;
}
CGRect rect = self.lable.frame;
rect.origin.y +=length;
self.lable.frame = rect; if (self.lable.frame.origin.y>) {
[timer invalidate];
[self.lable removeFromSuperview];
}
} - (void)viewDidLoad {
[super viewDidLoad];
/*
NSTimeInterval 计时器响应时间间隔
target:计时器的响应者
selector:计时器的响应方法
userInfo:nil
repeats:计时器是否重复响应
*/
length = ;
timer = [NSTimer timerWithTimeInterval:0.1 target:self selector:@selector(lableMove) userInfo:nil repeats:YES]; //将定时器插入runLoop(超级死循环)中
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
}
iOS UI-Lable标签、NStimer定时器和RunLoop超级死循环的更多相关文章
- 【IOS基础知识】NSTimer定时器使用
1.声明 NSTimer *timer; 2.定义 timer = [NSTimerscheduledTimerWithTimeInterval:1.0ftarget:selfsele ...
- iOS - OC NSTimer 定时器
前言 @interface NSTimer : NSObject 作用 在指定的时间执行指定的任务. 每隔一段时间执行指定的任务. 1.定时器的创建 当定时器创建完(不用 scheduled 的,添加 ...
- iOS - Swift NSTimer 定时器
前言 public class NSTimer : NSObject 作用 在指定的时间执行指定的任务. 每隔一段时间执行指定的任务. 1.定时器的创建 当定时器创建完(不用 scheduled 的, ...
- IOS中的NSTimer定时器详解
/* 在IOS中有多种定时器,这里我对NSTimer定时器做了一个简单的介绍.如果你是小白,你可能会从这篇文章中学习到一些知识,如果你是大牛,请别吝啬你的评论,指出我的不足,你的质疑是对我最大的帮助. ...
- [IOS]IOS UI指南
[IOS]IOS UI指南 众所周知,IOS的界面设计,越来越流行,可以说都形成了一个标准,搜集了一些资料,供自己以后学习使用! iOS Human Interface Guidelines (中文翻 ...
- IOS UI 第八篇:基本UI
实现图片的滚动,并且自动停止在每张图片上 - (void)viewDidLoad{ [super viewDidLoad]; UIScrollView *scrollView = [[U ...
- 使用CSS3中的input标签与lable标签组合实现banner图的切换
在做网页时,我们经常可以碰到banner图的切换.对于那些JS薄弱的同学来说,这就很尴尬了.今天,我来告诉大家如何使用CSS做出banner图切换的效果. 这里,用到了lable标签与input的组合 ...
- Html lable 标签
Html lable 标签 <html> <body> <!-- label 关联光标标签,点击文字使得关联的标签获取光标.for="username" ...
- lable标签的用途
lable标签的用途:为iput输入框元素定义标注: label 元素不会向用户呈现任何特殊效果.不过,它为鼠标用户改进了可用性.如果您在 label 元素内点击文本,就会触发此控件.就是说,当用户选 ...
随机推荐
- Python Web学习笔记之SSL,TLS,HTTPS
一. SSL 1. SSL简介 SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持.SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可 ...
- poj 1274 The Prefect Stall - 二分匹配
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 22736 Accepted: 10144 Description Far ...
- VC++实现程序重启的方法(转载)
转载:http://blog.csdn.net/clever101/article/details/9327597 很多时候系统有很多配置项,修改了配置项之后能有一个按钮实现系统重启.所谓重启就是杀死 ...
- Serv-U FTP服务器安装及使用图解教程
Serv-U,是一种被广泛运用的FTP服务器端软件,支持3x/9x/ME/NT/2K等全Windows系列.可以设定多个FTP服务器.限定登录用户的权限.登录主目录及空间大小等,功能非常完备. 它具有 ...
- openwrt的编译系统是如何生成squashfs文件系统的
答:请看include/image.mk中的以下定义: define Image/mkfs/squashfs $(STAGING_DIR_HOST)/bin/mksquashfs4 $(call mk ...
- 分页器的js实现代码 bootstrap Paginator.js
参考: http://www.jb51.net/article/76093.htm 如前所述, 不要什么都想到 jquery的 脚本js, 应该首先推荐的是 css 和 元素本身的事件 函数 如: o ...
- luogu P1880石子归并
石子归并 luogu1880 传送门 noi1995 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得 ...
- Visual Studio 项目模板制作(三)
前面,我们已经制作好了模板,然后放到相应的Template目录就可以在Visual Studio中使用 本篇,我们采用安装VSIX扩展的方式来安装模板,这种方式需要安装Visual Studio SD ...
- div滚动条时div内容显示一半
本文为博主原创,未经允许不得转载 今天在做页面浏览器适配时,将页面中的一个div进行放大时,出现了滚动条,但滚动条对应div中的 内容只能显示一半. 仔细对应属性样式时,div具有overflow:h ...
- Ubuntu 上 执行命令 java -version 显示 没有那个文件或目录
解决方法 执行 which java 发现默认java目录:/usr/bin/java . 查看 JAVA_HOME 路径:$JAVA_HOME,得到 /usr/local/java/jdk1.7.0 ...