UIslider 滑块控件,常用于音频,视频的播放
1.创建RootViewController,RootView,
2.在Rootview.h设置UIImageView,UIslider的属性,在.m中设置
#import "RootView.h"
@implementation RootView
- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
[self setupView];
}
return self;
}
- (void)setupView{
self.backgroundColor = [UIColor yellowColor];
self.slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 500, 380, 20)];
//设置滑块的最大值
self.slider.maximumValue = 10;
self.slider.minimumValue = -10;
//设置已播放部分的凹槽颜色
self.slider.minimumTrackTintColor = [UIColor redColor];
//设置未播放部分的凹槽颜色
self.slider.maximumTrackTintColor = [UIColor blueColor];
//设置滑动球的颜色和背景图片
//self.slider.thumbTintColor = [UIColor cyanColor];
[self.slider setThumbImage:[UIImage imageNamed:@"z21.jpg"] forState:UIControlStateNormal];
self.slider.maximumValueImage = [UIImage imageNamed:@"51.jpg"];
self.slider.minimumValueImage = [UIImage imageNamed:@"z21.jpg"];
//设置滑块的当前值。如果不设置边界范围默认是0-1;
self.slider.value = 5;
//播放动图
NSMutableArray *arr = [NSMutableArray array];
for (int i = 0; i < 6; i++) {
UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.tiff",i]];
[arr addObject:image];
}
self.image = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 200, 200)];
self.image.animationImages = arr;
//self.image.animationDuration = 3;//播放时间
//self.image.animationRepeatCount = 100;//设置播放次数
//[self.image startAnimating];//设置开始播放
[self addSubview:self.image];
[self addSubview:self.slider];
}
3.在Rootviewcontroller.m中
#import "RootViewController.h"
@interface RootViewController ()
@end
@implementation RootViewController
-(void)loadView{
self.rv= [[RootView alloc] initWithFrame:[[UIScreen mainScreen]bounds]];
self.view = self.rv;
}
- (void)viewDidLoad {
[super viewDidLoad];
//UISlider
/*
UIslider 滑块控件,常用于音频,视频的播放
*/
[self.rv.slider addTarget:self action:@selector(action:) forControlEvents:UIControlEventValueChanged];
}
- (void)action:(UISlider *)sender{
// NSLog(@"当前的值是:%lf",sender.value);
self.rv.image.animationDuration = sender.value;
self.rv.image.animationRepeatCount = 0;//重复次数
[self.rv.image startAnimating];
}
UISlider的自动播放
在创建的RootView中
#pragma mark UISlider
self.slider = [[UISlider alloc]initWithFrame:CGRectMake(50, 400, 300, 10)];
self.slider.backgroundColor = [UIColor yellowColor];
[self addSubview:self.slider];
在RootViewconroller.m
- (void)viewdidLoad{
#pragma mark UISlider 滑动条
//最大值
self.rv.slider.maximumValue = 60;
//最小值
self.rv.slider.minimumValue = 0;
self.rv.slider.maximumValueImage = [UIImage imageNamed:@"51.jpg"];
self.rv.slider.minimumValueImage = [UIImage imageNamed:@"z21.jpg"];
//设置滑条颜色
self.rv.slider.tintColor = [UIColor cyanColor];
//设置滑动球的颜色
self.rv.slider.thumbTintColor = [UIColor brownColor];
//[self.rv.slider setThumbImage:[UIImage imageNamed:@"z.jpg"] forState:UIControlStateNormal];
//添加滑动注释
[self.rv.slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
//定时器类的NStimer
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerAction:) userInfo:nil repeats:YES];
}
#pragma mark UISlider的点击事件
- (void)timerAction:(NSTimer *)sender{
// self.rv.backgroundColor = [UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:arc4random()%256/255.0];
self.rv.slider.value++;
}
- (void)sliderAction:(UISlider *)sender{
//sender.value 能获取当前slider所在位置的值
self.rv.backgroundColor = [UIColor colorWithRed:sender.value green:sender.value blue:sender.value alpha:sender.value];
NSLog(@"%f",sender.value);
}