IOS 仿支付寶支付屏幕亮度變化機(jī)制
1.首先,在需要實(shí)現(xiàn)的界面viewDidLoad中先保存亮度沒有變化之前的亮度,因?yàn)檫@個界面消失之后還要變回原來的亮度,變化亮度也相當(dāng)于用戶的一種設(shè)置,所以也要保存一下這個狀態(tài),因?yàn)橹螽?dāng)APP在active和非active切換時候需要知道是否需要為用戶做這個功能
// 保存原來的亮度 [[NSUserDefaults standardUserDefaults] setObject:@([UIScreen mainScreen].brightness) forKey:@"brightness"]; // 保存狀態(tài),需要為用戶變化屏幕亮度功能 [[NSUserDefaults standardUserDefaults] setObject:@YES forKey:@"ifNeedChangeLight"];
2.在viewDidAppear中設(shè)置需要的亮度
- (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; if ([UIScreen mainScreen].brightness < 0.8) { [UIScreen mainScreen].brightness = 0.8; } }
3.同理viewDidDisappear
- (void):(BOOL)animated { [super viewDidDisappear:animated]; // 還原 [UIScreen mainScreen].brightness = [[[NSUserDefaults standardUserDefaults] objectForKey:@"brightness"] floatValue]; [[NSUserDefaults standardUserDefaults] setObject:@NO forKey:@"ifNeedChangeLight"]; }
4.當(dāng)從底部滑起操作欄和退出app到主界面需要進(jìn)行恢復(fù)和設(shè)置相應(yīng)操作
- (void)applicationWillResignActive:(UIApplication *)application { if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"ifNeedChangeLight"] boolValue]) { [UIScreen mainScreen].brightness = [[[NSUserDefaults standardUserDefaults] objectForKey:@"brightness"] floatValue]; } } - (void)applicationDidBecomeActive:(UIApplication *)application { if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"ifNeedChangeLight"] boolValue]) { if ([UIScreen mainScreen].brightness < 0.8) { // 顏色需要漸變的話需要另外再寫 [UIScreen mainScreen].brightness = 0.8; } } }
5.如果需要亮度漸變效果網(wǎng)上有實(shí)現(xiàn)的函數(shù),設(shè)置亮度直接調(diào)函數(shù)就可以了
以上所述是小編給大家介紹的IOS 仿支付寶支付屏幕亮度變化機(jī)制,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
iOS開發(fā)之tableView點(diǎn)擊下拉擴(kuò)展與內(nèi)嵌collectionView上傳圖片效果
這篇文章主要介紹了iOS開發(fā)之tableView點(diǎn)擊下拉擴(kuò)展與內(nèi)嵌collectionView上傳圖片效果的相關(guān)資料,需要的朋友可以參考下2016-04-04iOS11上Xcode9 AppIcon 圖標(biāo)不顯示
升級到iOS11系統(tǒng)下自己的項(xiàng)目桌面app圖標(biāo)不見了,是什么原因呢,經(jīng)過一番查找,終于發(fā)現(xiàn)問題所在,現(xiàn)在分享給大家2017-11-11iOS獲取當(dāng)前時間和當(dāng)前時間戳的方法
這篇文章主要介紹了iOS獲取當(dāng)前時間和當(dāng)前時間戳,獲取當(dāng)前時間戳有兩種方法以秒位單位的,下面通過本文給大家分享iOS獲取當(dāng)前時間和當(dāng)前時間戳的方法,一起看看吧2017-01-01IOS UITableView和UITableViewCell的幾種樣式詳細(xì)介紹
這篇文章主要介紹了IOS UITableView和UITableViewCell的幾種樣式詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-12-12iOS實(shí)現(xiàn)調(diào)用QQ客戶端發(fā)起臨時會話
本篇文章主要給大家詳細(xì)分析了用IOS實(shí)現(xiàn)調(diào)用QQ客戶端發(fā)起臨時會話的功能,對此有需要的朋友收藏分享下。2018-02-02詳解iOS 用于解決循環(huán)引用的block timer
這篇文章主要介紹了詳解iOS 用于解決循環(huán)引用的block timer,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12