在我们开发项目的过程中,常常会遇到这样的功能,比如调整亮度,或者调整当前屏幕的字体大小,
其实这样的功能很好实现,
具体代码如下:
一、声明成员变量
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字体的大小;
具体实现如下图:
注:调整屏幕亮度的方法,需要真机才可以看到!获取当前系统屏幕亮度的方法,上面方法里面具体有,可以看看!
作者:稻草人11223