在我们开发项目的过程中,常常会遇到这样的功能,比如调整亮度,或者调整当前屏幕的字体大小,
其实这样的功能很好实现,
具体代码如下:
一、声明成员变量
1 { 2 UIView *_view; 3 BOOL isHidden; 4 UISlider *_slider; 5 UISlider *_twoSlider; 6 float value; 7 UILabel *_label; 8 NSInteger fontSize; 9 }
二、创建所需要改变的字体,一个label或是其他的控件,随意了
1 _label = [[UILabel alloc]initWithFrame:CGRectMake(50, 100, MainScreen_width - 100, 80)]; 2 _label.textAlignment = NSTextAlignmentCenter; 3 _label.textColor = [UIColor whiteColor]; 4 _label.text = @"大黄蜂"; 5 fontSize = 15; 6 _label.font = [UIFont systemFontOfSize:15]; 7 [imageView addSubview:_label];
三、创建slider,并把屏幕的亮度和字体的大小与slider相关联
1 _slider.backgroundColor = RGBAColor(239, 239, 239, 1); 2 _slider.value = 0.5; 3 _slider.minimumValue = 0.01; 4 _slider.maximumValue = 1.0; 5 _slider.minimumTrackTintColor = [UIColor greenColor];//划过的颜色 6 _slider.maximumTrackTintColor = [UIColor whiteColor];//未划过的颜色 7 [_slider addTarget:self action:@selector(sliderValueChange:) forControlEvents:UIControlEventValueChanged]; 8 [_view addSubview:_slider]; 9 10 _twoSlider = [[UISlider alloc]initWithFrame:CGRectMake(35, 60, MainScreen_width - 70, 30)]; 11 _twoSlider.backgroundColor = RGBAColor(239, 239, 239, 1); 12 _twoSlider.minimumValue = 1; 13 _twoSlider.maximumValue = 100; 14 _twoSlider.value = 50; 15 _twoSlider.minimumTrackTintColor = [UIColor greenColor];//划过的颜色 16 _twoSlider.maximumTrackTintColor = [UIColor whiteColor];//未划过的颜色 17 [_twoSlider addTarget:self action:@selector(twoSliderValueChange:) forControlEvents:UIControlEventValueChanged]; 18 [_view addSubview:_twoSlider];
三、具体点击的方法的实现
1 //控制屏幕亮度的方法 2 -(void)sliderValueChange:(UISlider *)sender 3 { 4 [[UIScreen mainScreen]setBrightness:sender.value]; 5 } 6 7 //控制字体大小的方法 8 -(void)twoSliderValueChange:(UISlider *)sender 9 { 10 _label.font = [UIFont systemFontOfSize:sender.value]; 11 }
这样的话,具体的功能就实现了,可以通过拖动slider来控制屏幕的亮度和label字体的大小;
具体实现如下图:
注:调整屏幕亮度的方法,需要真机才可以看到!获取当前系统屏幕亮度的方法,上面方法里面具体有,可以看看!