[[UIScreen mainScreen]setBrightness: ]
(sdk 5.0 で) を使用して、アプリのシステム バックグラウンド ライトを変更します。
次の手順は私のアプリで機能します
アプリをアクティブにし、システムの明るさをデフォルトとして取得し、名前を付けて保存し
sysBright
ます。私のアプリで明るさを変更し、明るさを変更して、名前を付けて保存し
appBright
ます。ホームボタンまたはロックボタンを備えた ResignActive アプリで、明るさを
sysBright
(ステップ 1 の値、システムのデフォルトの明るさ) に設定します。再びアクティブなアプリ。その後、上記の手順 1 から 3 を繰り返します。
手順 3 で問題が発生しました。ロック ボタンでアプリを非アクティブ化すると、機能が正常 applicationWillResignActive
に動作し、明るさの値を復元できます ( sysBright
)。
しかし、ホームボタンを押しても動かなくなりました。明るさは、アプリで変更した値のままです。( appBright
)
誰かそれについて何か考えがありますか?助けてくれてありがとう〜
コードは次のとおりです。
float appBright,sysBright;
- (void)applicationDidBecomeActive:(UIApplication *)application
{
sysBright = [[UIScreen mainScreen] brightness];
[[NSUserDefaults standardUserDefaults] setFloat:sysBright forKey:@"sysBright"];
[[UIScreen mainScreen] setBrightness:appBright];
}
//doesn't work when i ResignActive with the home button
- (void)applicationWillResignActive:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] floatForKey:@"sysBright"];
[[UIScreen mainScreen] setBrightness:sysBright];
}