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

20.UISlider(滑动按钮)

2015-11-17 21:58 537 查看


**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”];

}


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