关闭

[TwistedFate]滑块UISlider 跑图UIImageView

标签: 滑块跑图
241人阅读 评论(0) 收藏 举报
分类:

UISlider

初始化及设背景色

UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(40, 100, 300, 20)];
slider.backgroundColor = [UIColor redColor];

设置轨迹颜色

[slider setMinimumTrackTintColor:[UIColor greenColor]];
[slider setMaximumTrackTintColor:[UIColor blackColor]];

设置球的颜色

[slider setThumbTintColor:[UIColor cyanColor]];

设置背景图片

[slider setMinimumValueImage:[UIImage imageNamed:@"01-refresh"]];
[slider setMaximumValueImage:[UIImage imageNamed:@"03-loopback"]];

设置 轨迹图片

// 设置轨迹图片
[slider setMinimumTrackImage:[UIImage imageNamed:@"03-loopback"] forState:(UIControlStateHighlighted)];     
// 三种状态

设置圆球图片

// 三种状态
slider setThumbImage:[UIImage imageNamed:@"01-refresh"] forState:(UIControlStateNormal)];
    [slider setThumbImage:[UIImage imageNamed:@"02-redo"] forState:(UIControlStateHighlighted)];
    [slider setThumbImage:[UIImage imageNamed:@"03-loopback"] forState:(UIControlStateSelected)];

设置滑块的处置 最大值 最小值

如果要设置初值,需要先把最大值与最小值设置上,再给初值才会有变化

// ********************** // 
slider.minimumValue = 0;
slider.maximumValue = 10;
slider.value = 0;

添加滑动事件

// 除了button 其余多用ValueChanged
[slider addTarget:self action:@selector(sliderAction:) forControlEvents:(UIControlEventValueChanged)];

添加到视图上并释放

[self.view addSubview:slider];
[slider release];

跑图

创建一个数组存储图片

NSMutableArray *imageArray = [NSMutableArray array];
for (int i = 1; i < 22; i++) {
    UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",i]];
    [imageArray  addObject:image];
}

初始化imageView添加标签及背景色

UIImageView *imageV = [[UIImageView alloc] initWithFrame:CGRectMake(0, 160, 375, 400)];
imageV.tag = 111;
imageV.backgroundColor = [UIColor redColor]

设置imageView播放动画的数组

imageV.animationImages = imageArray;

设置时间间隔(播放完整的一次时间间隔)

imageV.animationDuration = 10;

设置重复的次数(零代表无限次)

imageV.animationRepeatCount = 0;

设置开始播放动画

[imageV startAnimating];

添加到视图上并释放

[self.view addSubview:imageV];
[imageV release];

实现点击事件

slider控制 动画播放的时间间隔,并且 slider滑动到最大值 停止动画

- (void)sliderAction:(UISlider *)slider{
    UIImageView *imageV = (UIImageView *)[self.view viewWithTag:111];
    if (slider.value == slider.maximumValue) {
        [imageV stopAnimating];
        slider.selected = YES;
        imageV.image = [UIImage imageNamed:@"car.jpg"];
    }else{
        imageV.animationDuration = 10 - slider.value;
        [imageV startAnimating];
        slider.selected = NO;
    }
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:12798次
    • 积分:745
    • 等级:
    • 排名:千里之外
    • 原创:64篇
    • 转载:4篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论