国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)

2020-07-26 03:01:14
字體:
來源:轉載
供稿:網友

如圖,左側上下滑動改變亮度,右側上下滑動改變音量。

這里寫圖片描述

1.改變屏幕亮度

 //獲得當前屏幕亮度  light = [UIScreen mainScreen].brightness;  light = 0.5f;  //直接賦值或者使用set方法皆可  [UIScreen mainScreen].brightness = light;

2.改變系統音量

使用的比較多的就是通過MPMusicPlayerController來改變系統音量,主要歸功于MPMusicPlayerController的音量和系統的同步。

MPMusicPlayerController *mpVC = [MPMusicPlayerController applicationMusicPlayer];//獲得系統當前音量voice = _mpVC.volume;voice = 0.5f;//改變系統音量_mpVC.volume = voice;

3.滑動響應方法

- (void)leftSwipGes:(UIPanGestureRecognizer *)leftSwip{  //滑動方法獲取到當前位置的y坐標  leftCurrentY = [leftSwip translationInView:leftView].y;  NSLog(@"left");  //當前坐標大于上一次移動的坐標,為向下滑動  if (leftCurrentY > leftLastY) {    if (light > 0) {      //向下滑動屏幕變暗,亮度下降      light = light - 0.01;    }    else{      //當亮度為0時固定為0,禁止為負值      light = 0;    }  }  else  {    if (light < 1) {      //向上滑動亮度增加      light = light + 0.01;    }    else{      //當亮度為1時固定為1,禁止大于1      light = 1;    }  }  //設置屏幕亮度  [UIScreen mainScreen].brightness = light;  //當前位置的上一次移動的位置y坐標  leftLastY = leftCurrentY;}//此處除參數外原理一樣,不再額外注釋- (void)rightSwipGes:(UIPanGestureRecognizer *)rightSwip{  NSLog(@"right");  rightCurrentY = [rightSwip translationInView:rightView].y;  if (rightCurrentY > rightLastY) {    if (voice > 0) {      voice = voice - 0.01;    }    else{      voice = 0;    }  }  else  {    if (voice < 1) {      voice = voice + 0.01;    }    else{      voice = 1;    }  }  //設置系統音量  _mpVC.volume = voice;  rightLastY = rightCurrentY;}

4.AVAudioPlayer簡單運用

//從budle路徑下讀取音頻文件,這個文件名是你的歌曲名字,mp3是你的音頻格式  NSString *string = [[NSBundle mainBundle] pathForResource:@"夜空中最亮的星" ofType:@"mp3"];  NSString *playUrl = [string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; //轉碼成UTF-8 否則可能會出現錯誤  //把音頻文件轉換成url格式  NSURL *url = [NSURL URLWithString:playUrl];  //初始化音頻類 并且添加播放文件  _avAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];  [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];  //設置初始音量大小  _avAudioPlayer.volume = voice;  //設置音樂播放次數 -1為一直循環  _avAudioPlayer.numberOfLoops = -1;  //預播放  [_avAudioPlayer prepareToPlay];  [_avAudioPlayer play];

這里有一大坑,一定要設置后臺播放,否則是不會播放的,下面這段代碼

 [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

最后附上Demo:點擊下載

以上所述是小編給大家介紹的iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴彦淖尔市| 丰台区| 紫云| 玉田县| 昌乐县| 临泉县| 双城市| 福海县| 民权县| 马尔康县| 白银市| 泰州市| 孝昌县| 襄城县| 绩溪县| 兰溪市| 霸州市| 德庆县| 泰来县| 普定县| 阿鲁科尔沁旗| 新巴尔虎右旗| 尼玛县| 松潘县| 光山县| 阳春市| 定边县| 张家川| 淮北市| 平原县| 宝山区| 舞阳县| 滦平县| 吴堡县| 义乌市| 孟州市| 隆德县| 姜堰市| 天镇县| 肇州县| 敦煌市|