Я меняю яркость UIScreen, используя значение UISlider, я пробовал этот код
self.Slide = [[UISlider alloc] initWithFrame:CGRectMake(13, 0, 244, 23)];
[self.Slide addTarget:self action:@selector(sliderHandler:) forControlEvents:UIControlEventValueChanged];
self.Slide.minimumValue = 0.0f;
self.Slide.maximumValue = 1.0f;
[self.Slide setValue:0.0f];
self.Slide.value = [[UIScreen mainScreen] brightness];
[self.view addSubview:self.Slide];
и вызываемый метод
- (void)sliderHandler:(UISlider *)sender {
[[UIScreen mainScreen] setBrightness:sender.value];
}
метод вызов но яркость не меняется......
и как я могу установить значение UISlider равным 0 начальному? Благодарность....
Ответ 1 · IronManGill
Используйте этот код, а для значения ползунка установите максимальное и минимальное значение, как указано в приведенном ниже коде Яркость UISlider а>
Принимая во внимание, что приведенный ниже код тоже будет работать.
- (void)viewDidLoad
{
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(0,0,300,40)];
[slider addTarget:self action:@selector(sliderHandler:) forControlEvents:UIControlEventValueChanged];
slider.minimumValue = 0.f;
slider.maximumValue = 1.0f;
slider.value = [[UIScreen mainScreen] brightness];
[[self view]addSubview:slider];
[super viewDidLoad];
}
- (void)sliderHandler:(UISlider *)sender
{
//NSLog(@"value:%f", sender.value);
[[UIScreen mainScreen] setBrightness:sender.value];
}
ИЗМЕНИТЬ:
Вы тоже можете попробовать этот способ. Добавьте UIVIew чистого цвета в представление и увеличьте альфа-компонент этого представления при событии изменения значения ползунка. Делая это, вид затемняется, и у нас возникает ощущение, что яркость приложения уменьшается. Это решение может быть не очень подходящим, но оно прекрасно работает.