您的位置:首页 > 产品设计 > UI/UE

用简单UI控件实现霓虹灯

2015-12-26 15:30 441 查看
用UIView,UILabel,制作霓虹灯效果

- (void)viewDidLoad {
    [super viewDidLoad];

for (int i = 0; i < 7; i++) {
        NSArray *arr = @[[UIColor redColor], [UIColor blueColor], [UIColor greenColor], [UIColor cyanColor], [UIColor orangeColor], [UIColor purpleColor], [UIColor brownColor]];
        NeonView *view = [[NeonView alloc] initWithFrame:CGRectMake(45 + (19 * i), 45 + (18 * i), 330 - (i + 1) * 40, 330 - (i + 1) * 40)];
        view.tag = 201 + i;
        [self.view addSubview:view];
        view.backgroundColor = arr[i];

    
            }

    
         UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
        btn.frame = CGRectMake(80 , 450, 70, 40);
        [btn setTitle:@"开始" forState:UIControlStateNormal];
        [btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
        [btn addTarget:self action:@selector(timeAdvanced) forControlEvents: UIControlEventTouchUpInside];
        btn.tag = 100;
    btn.layer.cornerRadius = 10;
        btn.backgroundColor = [UIColor cyanColor];
        [self.view addSubview:btn];

    
    UIButton *cancelBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    cancelBtn.frame = CGRectMake(210, 450, 70, 40);
    [cancelBtn setTitle:@"停止" forState:UIControlStateNormal];
    [cancelBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
    [cancelBtn addTarget:self action:@selector(stop) forControlEvents: UIControlEventTouchUpInside];
    cancelBtn.tag = 101;
    cancelBtn.backgroundColor = [UIColor cyanColor];
    cancelBtn.layer.cornerRadius = 10;
    [self.view addSubview:cancelBtn];
}

- (void)timeAdvanced{
self.timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(changeColor) userInfo:nil repeats:YES];
               }

//停止计时器
- (void)stop{
    [self.timer invalidate];
}
//改变颜色
- (void)changeColor{
     NeonView *changeView = [[NeonView alloc] init];
    changeView.backgroundColor = [self.view viewWithTag:201].backgroundColor;
    for (int i = 201; i < 207; i++) {
        [self.view viewWithTag:i].backgroundColor = [self.view viewWithTag:i + 1].backgroundColor;
    }
    [self.view viewWithTag:206].backgroundColor = changeView.backgroundColor;
    [changeView release];
 }

-    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ui 控件 霓虹灯