详细代码请转 GitHub
touchesMoved的实现方法
- (void)touchesMoved:(NSSet<UITouch*> *)touches withEvent:(UIEvent*)event {
// _GreenScreen = NO;
self.touches= touches;
self.gestureCount= touches.count;
if(self.pinchGesture.numberOfTouches== 1&& self.gestureCount== 1) {
if(_GreenScreen== NO) {
_GreenScreen= YES;
[[NSNotificationCenterdefaultCenter] postNotificationName:@"touchesBegin"object:nil];
}
//重绘
UITouch*touch = [touches anyObject];
self.movePoint= [touch locationInView:self];
CGFloatoffsetX = self.movePoint.x- self.startPoint.x;
BOOLisChangeMovePoint;
if(offsetX < 0) {
//左滑左移加时间
isChangeMovePoint = [selfsetTimeWithOffsetIndex:offsetX];
} else{
//右滑右移减时间
isChangeMovePoint = [selfsetTimeWithOffsetIndex:offsetX];
}
if(isChangeMovePoint) {
self.startPoint= self.movePoint;
}
if(self.returnMoveTime) {
self.returnMoveTime(self.time);
}
[selfreDraw];
}
}
手指捏合放大标尺的实现代码


效果如图所示:

网友评论