日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

            歡迎訪問(wèn) 生活随笔!

            生活随笔

            當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

            编程问答

            我的iOS学习历程 - UISlider(简单的设置一组图片动画)

            發(fā)布時(shí)間:2025/3/14 编程问答 17 豆豆
            生活随笔 收集整理的這篇文章主要介紹了 我的iOS学习历程 - UISlider(简单的设置一组图片动画) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

            今天我們學(xué)習(xí)的是UISlider,就是平時(shí)看視頻聽(tīng)音樂(lè)等的進(jìn)度條的設(shè)置

            今天設(shè)置的slider是控制播放一組圖片速度的例子:

            1.初始化以及設(shè)置一些屬性

            // 初始化UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(50, 50, 300, 30)]; // 設(shè)置背景色slider.backgroundColor = [UIColor grayColor]; // 設(shè)置最小值軌跡顏色[slider setMinimumTrackTintColor:[UIColor greenColor]]; // 設(shè)置最大值軌跡顏色[slider setMaximumTrackTintColor:[UIColor purpleColor]]; // 設(shè)置拖動(dòng)按鈕顏色[slider setThumbTintColor:[UIColor brownColor]]; // 設(shè)置圖片[slider setMinimumValueImage:[UIImage imageNamed:@"01-refresh"]];[slider setMaximumValueImage:[UIImage imageNamed:@"03-loopback"]];[slider setThumbImage:[UIImage imageNamed:@"01-refresh"] forState:UIControlStateNormal];[slider setThumbImage:[UIImage imageNamed:@"02-redo"] forState:UIControlStateHighlighted];[slider setThumbImage:[UIImage imageNamed:@"03-loopback"] forState:UIControlStateSelected]; // 設(shè)置滑塊的初值 最大值 最小值 // 如果想設(shè)置初始位置 需要先把最大 最小值設(shè)置上 // 再給初值 才會(huì)發(fā)生變化slider.minimumValue = 0;slider.maximumValue = 10;slider.value = 10;

            2.添加滑動(dòng)事件(重要的,需要通過(guò)添加事件來(lái)關(guān)聯(lián))

            [slider addTarget:self action:@selector(sliderClick:) forControlEvents:UIControlEventValueChanged];

            事件的實(shí)現(xiàn)(預(yù)先添加了圖片,然后設(shè)置播放完一組照片的時(shí)間為slider的值來(lái)聯(lián)系起來(lái))

            - (void)sliderClick:(UISlider *)slider {UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];if (slider.value == slider.maximumValue) {// 為了美觀 停止的時(shí)候 添加一張占位圖[imageView stopAnimating];imageView.image = [UIImage imageNamed:@"005.jpg"];}else{// 把播放玩一組照片的時(shí)間與slider的值聯(lián)系起來(lái)imageView.animationDuration = slider.value;[imageView startAnimating];} }

            3.設(shè)置一組圖片動(dòng)畫(huà)

            // imageViewUIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 100, self.view.frame.size.width, 500)];imageView.backgroundColor = [UIColor purpleColor];imageView.tag = 1000;[self.view addSubview:imageView];[imageView release];// 構(gòu)建一個(gè)圖片的數(shù)組NSMutableArray *arr = [NSMutableArray array];for (int i = 1; i <= 10; i++) {// 把圖片的名字拼接出來(lái)NSString *imageName = [NSString stringWithFormat:@"%d.jpg",i];// 初始化每一張圖片UIImage *image = [UIImage imageNamed:imageName];// 把圖片添加到數(shù)組里[arr addObject:image];}// 設(shè)置imageView的播放動(dòng)畫(huà)的數(shù)組imageView.animationImages = arr; // 設(shè)置時(shí)間間隔(播放完整一次10秒)imageView.animationDuration = 10; // 設(shè)置重復(fù)次數(shù)(零代表無(wú)限次)imageView.animationRepeatCount = 0; // 讓動(dòng)畫(huà)開(kāi)始[imageView startAnimating]; }

            最后一個(gè)是倒計(jì)時(shí)的實(shí)例:

            點(diǎn)擊一個(gè)發(fā)送驗(yàn)證碼的按鈕進(jìn)行倒計(jì)時(shí)

            - (void)viewDidLoad {[super viewDidLoad];UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];button.frame = CGRectMake(100, 100, 100, 100);button.backgroundColor = [UIColor purpleColor];button.tag = 100;[button setTitle:@"發(fā)送驗(yàn)證碼" forState:UIControlStateNormal];[button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];[self.view addSubview:button];// 設(shè)置倒計(jì)時(shí)初值self.number = 5;}- (void)buttonClick:(UIButton *)button {// 倒計(jì)時(shí)核心 每隔 一秒鐘 時(shí)間遞減// 計(jì)時(shí)器(每隔多少時(shí)間 調(diào)用一個(gè)方法)// (NSTimeInterval) 代表時(shí)間間隔NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerAction:) userInfo:@"button倒計(jì)時(shí)" repeats:YES];// 計(jì)時(shí)器開(kāi)始[timer fire];button.userInteractionEnabled = NO;}- (void)timerAction:(NSTimer *)timer {// 改button的標(biāo)題UIButton *button = (UIButton *)[self.view viewWithTag:100];NSString *buttonTitle = [NSString stringWithFormat:@"%ld",self.number--];[button setTitle:buttonTitle forState:UIControlStateNormal]; // 判斷倒計(jì)時(shí)是否結(jié)束(標(biāo)題是否為0)if ([[button titleForState:UIControlStateNormal] isEqualToString:@"0"]) {// 停止計(jì)時(shí)器[timer invalidate];// 更改標(biāo)題[button setTitle:@"發(fā)送驗(yàn)證碼" forState:UIControlStateNormal];// 打開(kāi)交互button.userInteractionEnabled = YES;// 重置時(shí)間self.number = 5;}}

            轉(zhuǎn)載于:https://www.cnblogs.com/888yf/p/4992717.html

            總結(jié)

            以上是生活随笔為你收集整理的我的iOS学习历程 - UISlider(简单的设置一组图片动画)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

            如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。