Как изменить яркость в приложении iOS 5?
Как бы я запрограммировал возможность изменять яркость в приложении? Я знаю, что это возможно, поскольку я видел по крайней мере три приложения, которые могут это сделать. Это было бы очень полезно для моего приложения. Я знаю, что это возможно только в iOS 5 с классом UIScreen, но я не знаю, как его программировать. Пожалуйста, помогите мне!
4 ответа
UIScreen
класс имеет новое свойство под названиемbrightness
,
Кроме того, есть еще одно свойство под названием wantsSoftwareDimming
что (когда установлено YES
) позволяет вам опускаться ниже минимальной яркости, поддерживаемой аппаратным обеспечением, потому что специальный "вид затемнения" накладывается на экран, чтобы затемнить вещи еще дальше.
brightness
собственность плавает от 0
в 1
, Так:
- с
wantsSoftwareDimming
установлен вNO
(по умолчанию),brightness
из0
означает "самое темное оборудование поддерживает" иbrightness
из1
означает "самое яркое аппаратное обеспечение". - с
wantsSoftwareDimming
установлен вYES
,brightness
из0
означает "самое темное оборудование поддерживает ПЛЮС затемнение путем наложения затемнения", иbrightness
из1
по-прежнему означает "самое яркое аппаратное обеспечение".
Я никогда не пробовал, но, глядя на документы, все должно выглядеть так:
UIScreen *mainScreen = [UIScreen mainScreen];
mainScreen.brightness = .5; //should set the brightness at 50%
Вы можете использовать любой из этих двух:
[[UIScreen mainScreen]setBrightness:1.0];
GSEventSetBacklightLevel(0.5f);
Но это частный вызов API, если вы его используете, ваше приложение, несомненно, будет отклонено.
Как отмечали другие, вы можете использовать
[[UIScreen mainScreen] setBrightness:1.0];
НО быть очень осторожным, потому что вы столкнетесь с проблемами (говоря из опыта здесь), посмотрите на это: IOS5 setBrightness не работал с applicationWillResignActive и это: Кто-нибудь был в состоянии использовать [[UIScreen mainScreen] setBrightness] на фоне / выходе?
(Я хотел бы, чтобы, когда я обнаружил эту тему / ответ):-(