0

UISlider の値を使用して UIScreen の明るさを変更しています このコードを試しました

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];
}

メソッドはcallですが明るさが変わらず……

UISlider の値を初期値 0 に設定するにはどうすればよいですか? ありがとう....

4

1 に答える 1

0

このコードを使用し、スライダー値については、以下のコードで指定されている最大値と最小値を設定してくださいUISlider Brightness

以下のコードも機能しますが。

- (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 をビューに追加し、スライダー値の変更イベントでこのビューのアルファ コンポーネントを増やします。これを行うと、ビューが暗くなり、アプリの明るさが減少したように感じます。このソリューションはあまり適切ではないかもしれませんが、問題なく機能します。

于 2013-08-03T10:53:55.650 に答える