iOS中在oc中制作一个霓虹灯
来源:互联网 发布:飞歌导航端口和波特率 编辑:程序博客网 时间:2024/06/03 11:48
1.创建霓虹灯的布局图
command + n 创建一个MyView的类
MyView.h文件中创建一个可变数组来接收所有的圆圈
<span style="font-size:18px;">(nonatomic,strong)NSMutableArray</span>MyView.m文件中重写初始化方法:
<span style="font-size:24px;">- (instancetype)initWithFrame:(CGRect)frame</span>
<span style="font-size:24px;">{<span style="white-space:pre"></span></span>
<span style="font-size:24px;"><span style="white-space:pre"></span>self = [super initWithFrame:frame];</span>
<span style="font-size:24px;"><span style="white-space:pre"></span>if (self) {</span>
<span style="font-size:24px;"><span style="white-space:pre"></span>[self create];</span>
<span style="font-size:24px;"><span style="white-space:pre"></span>}</span>
<span style="font-size:24px;"><span style="white-space:pre"></span>return self</span>
<span style="font-size:24px;">}</span>添加creat的实现方法:
创建视图
<span style="font-size:24px;">#pragma mark 创建视图- (void)creat{ for (int i = 0; i < 8; i++) { UIView *view = [[UIView alloc] initWithFrame:CGRectMake(i * 50, i * 50 , self.frame.size.width - 40 * i, self.frame.size.height - 40 * i)]; view.center = self.center; view.backgroundColor = [UIColor blueColor]; view.layer.cornerRadius = (self.frame.size.width - 40 * i) / 2; view.layer.borderWidth = 1; [self addSubview:view]; [self.array addObject:view]; }}</span>
<span style="font-size:24px;">#pragma mark 懒加载数组.懒加载属于对象的get方法,如果在懒加载中跟使用点语法,程序就会进入循环调用。- (NSMutableArray *)array{ if (!_array) { _array = [[NSMutableArray alloc] init]; } return _array;}</span>
2.在ViewController.m文件中
@property (nonatomic,strong)MyView *myView;@property (nonatomic,strong)NSMutableArray *colorArray;
- (void)loadView{ [super loadView]; self.myView = [[MyView alloc] initWithFrame:CGRectMake(10, 100, 350, 350)]; self.view = self.myView;}
- (void)viewDidLoad { [super viewDidLoad];#pragma mark 给视图的颜色赋值 for (int i = 0 ; i < self.myView.array.count; i++) { UIView *view = self.myView.array[i]; UIColor *tempColor = self.colorArray[i]; view.backgroundColor = tempColor; } [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(change) userInfo:nil repeats:YES];}
#pragma mark 懒加载数组颜色-(NSArray *)colorArray{ if (!_colorArray) { UIColor *color1 = [UIColor redColor]; UIColor *color2 = [UIColor blueColor]; UIColor *color3 = [UIColor yellowColor]; UIColor *color4 = [UIColor orangeColor]; UIColor *color5 = [UIColor grayColor]; UIColor *color6 = [UIColor brownColor]; UIColor *color7 = [UIColor greenColor]; UIColor *color8 = [UIColor cyanColor]; self.colorArray = [@[color1,color2,color3,color4,color5,color6,color7,color8] mutableCopy]; } return _colorArray;}
#pragma mark 颜色交换- (void)change{ for (int i = 0; i < 7; i++) { UIView *tempView = self.myView.array[i]; UIColor *tempColor = tempView.backgroundColor; tempColor = self.colorArray[i]; self.colorArray[i] = self.colorArray[i + 1]; self.colorArray[i + 1] = tempColor; tempView.backgroundColor = self.colorArray[i]; }}
0 0
- iOS中在oc中制作一个霓虹灯
- IOS 霓虹灯效果(oc)
- OC(IOS)霓虹灯赋色(最全版)
- 在网页中制作iOS风格放大镜
- 在Flex中,制作一个折线图
- UI中霓虹灯效果代码
- 3 - IOS之cocos3d - 5 - 制作一个人物并在cocos3d中加载
- iOS在Xcode6中怎么创建OC category文件
- iOS在OC项目中集成Charts绘制图表框架
- 如何在一个项目中是OC和Swift开发
- iOS-OC中混编swift
- 在OC中怎样去查找一个字符串中有没有另外一个字符串
- 在iOS中如何创建一个控制器
- 在iOS应用中使用字体图标及制作字体库
- 在photoshop中如何制作一个简洁干净的按钮
- 在ABAP中制作一个多屏幕的应用事务
- 在AR中制作一个重力感应标志
- 在AR中制作一个RPG风格指南针
- XML是什么,它可以做什么?——写给XML入门者
- 观察者模式
- 如何使用XML作为小型数据库
- ftok函数(file to key)
- spark内核揭秘-14-Spark性能优化的10大问题及其解决方案
- iOS中在oc中制作一个霓虹灯
- [BetterExplained]为什么你应该(从现在开始就)写博客
- ADB SHELL 你值得拥有
- strtoul (将字符串转换成无符号长整型数)
- 老调重弹:对kvo的封装思路
- 如何在onCreate方法中获取视图的宽度和高度
- 与甲骨文长达六年的版权拉锯,谷歌的胜利是软件行业的胜利
- fastjson序列化hibernate查询的数据报错:failed to lazily initialize a collection of role
- 我学过的android-1