iOS QR界面亮度调整

亮度调事,不久在QR界面切换的时候还要考虑进入前台后台时的操作

1.QR界面功能实现代码。

QR界面

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    
    [[NSUserDefaults standardUserDefaults] setValue:@([UIScreen mainScreen].brightness) forKey:@"Brightness"];
    
    [UIScreen mainScreen].brightness = 1;
}

- (void) viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    
    NSNumber* num = [[NSUserDefaults standardUserDefaults] objectForKey:@"Brightness"];
    
    if(num.floatValue > 0.1)
    {
        [UIScreen mainScreen].brightness = num.floatValue;
    }
}

2.进入前后台时的处理。这个地方要意思,必须要在Appdelegate 

中的两个回调函数中实现,在QR()中添加进入前后台通知实现的话,会有问题。具体原历不清楚

- (void)applicationDidBecomeActive:(UIApplication *)application

- (void)applicationWillResignActive:(UIApplication *)application

- (void)applicationDidBecomeActive:(UIApplication *)application {
    application.applicationIconBadgeNumber = 0;
    
    if(当前界面是QR界面)
    {
    	[UIScreen mainScreen].brightness = 1; 
    }
}

- (void)applicationWillResignActive:(UIApplication *)application
{
    NSNumber* num = [[NSUserDefaults standardUserDefaults] objectForKey:@"Brightness"];
    
    if(num.floatValue > 0.1)
    {
        [UIScreen mainScreen].brightness = num.floatValue;
    }
    
    NSLog(@"num = %@", num);
}

你可能感兴趣的:(iOS,知识点总结,-,iOS,经验总结,-,ios)