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

IOS开发 UI UISlider

2016-01-08 22:32 501 查看
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);

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