我正在寻找一个UISwipeGestureRecognizer
附加到我的 UIView 的。我想要实现的是允许用户在屏幕上滑动手指并设置屏幕的亮度。
这是我尝试过的:
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint currentPosition = [touch locationInView:self.view];
CGFloat deltaXX = (startPoint.x - currentPosition.x);
float brightVal;
if (deltaXX > 0) {
brightVal = [[UIScreen mainScreen] brightness] / ((startPoint.x / deltaXX) * 1.0);
} else {
brightVal = [[UIScreen mainScreen] brightness] - ((startPoint.x / deltaXX) * 1.0);
}
NSLog(@"%f", brightVal);
[[UIScreen mainScreen] setBrightness:brightVal];
}
但是,这似乎无法正常工作。在屏幕的右侧边缘,用户可以快速调整亮度。
我认为问题是我无法弄清楚如何标准化1.0
左侧和0.0
右侧的值。
有什么建议么?