关闭

20.UISlider(滑动按钮)

标签: UISlider滑动按钮控件
395人阅读 评论(0) 收藏 举报
分类:

这里写图片描述
**UIslider是一个方便的控件,让用户能够以可视化的方式设置指定范围内的值。和按钮一样,滑块也能响应事件,还可像文本框一样被读取。如果希望用户对滑块的调整立刻影响应用程序,则需要让他触发操作。

初始化

UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(20,100 , 300, 50)];
改变背景颜色
slider.backgroundColor = [UIColor redColor];
设置轨迹颜色

设置轨迹左边颜色

slider.minimumTrackTintColor = [UIColor yellowColor];

设置轨迹右边颜色

slider.maximumTrackTintColor = [UIColor magentaColor];

设置滑动按钮颜色(球)

slider.thumbTintColor = [UIColor greenColor];
================================================

实现IMageView动画(跑图)

创建三张图片
UIImage *image = [UIImage imageNamed:@”01-refresh”];
UIImage *image1 = [UIImage imageNamed:@”02-redo”];
UIImage *image2 = [UIImage imageNamed:@”03-loopback”];

设置最小值的 图片

slider.minimumValueImage = image;

设置最大值 图片

slider.maximumValueImage = image1;

设置滑动按钮图片

普通状态
[slider setThumbImage:image forState:(UIControlStateNormal)];

高亮状态
[slider setThumbImage:image1 forState:(UIControlStateHighlighted)];

选中
[slider setThumbImage:image2 forState:(UIControlStateSelected)];

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

如果想设置初始位置 需要先把最大 最小值设置上 再给初值 才会发生变化
最小值
slider.minimumValue = 0;
最大值
slider.maximumValue = 10;
初值
slider.value = 1;

添加滑动事件

[slider addTarget:self action:@selector(sliderAction:) forControlEvents:(UIControlEventValueChanged)];
[self.view addSubview:slider];
[slider release];
self.imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 200, 300, 400)];
self.imageView.backgroundColor = [UIColor blueColor];

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

创建一个可变数组 用来保存图片(工程里拖进来10张图片 图名1 - 10.jpg)
NSMutableArray *imageArray = [NSMutableArray array];

构建一个图片的数组
for (int i = 1; i < 11; i++) {

把图片的名字 拼接出来
NSString *imageName = [NSString stringWithFormat:@”%d.jpg”,i];
NSLog(@”%@”,imageName);

初始化每一张图片
UIImage *image = [UIImage imageNamed:imageName];
把图片添加到数组里
[imageArray addObject:image];

}

设置imageView播放动画的数组
self.imageView.animationImages = imageArray;
设置时间间隔 (播放完整一次的时间)
self.imageView.animationDuration = 5;
设置重复次数(零 代表无限次)
self.imageView.animationRepeatCount = 0;
让动画开始
[self.imageView startAnimating];

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

实现滑动事件

-(void)sliderAction:(UISlider *)slider
{
self.imageView.animationDuration = self.imageView.animationDuration - slider.value;
让动画开始
[self.imageView startAnimating];

判断当前值到最大了吗
if (slider.value == slider.maximumValue) {

停止播放
[self.imageView stopAnimating];

为了美观 停止的时候 添加一张占位图
self.imageView.image = [UIImage imageNamed:@”5.jpg”];

}

}**

0
0

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