Tôi có chế độ xem mà người dùng có thể chụm để tăng hoặc thu nhỏ. Tôi muốn điều này để làm việc dọc theo hai trục - nếu pinch là chủ yếu là ngang, nó sẽ phát triển/thu nhỏ đối tượng theo chiều ngang, nhưng nếu pinch chủ yếu là dọc, nó sẽ phát triển/thu nhỏ đối tượng theo chiều dọc.Tôi có thể sử dụng UIPinchGestureRecognizers để phân biệt giữa pinch ngang và dọc không?
Tôi có thể đạt được điều này với một hoặc hai công cụ nhận dạng pinch không và nếu có thì làm cách nào?
Cách tiếp cận tuyệt vời! – perrohunter
Tốt, nhưng 1. Tôi đoán bạn có nghĩa là 'fabsf ((touch1.y - touch0.y)/(touch1.x - touch0.x))', với 'x' cho thành phần cuối cùng. 2. Trước tiên, bạn nên kiểm tra hoàn toàn theo chiều dọc, 'if (touch1.x == touch0.x) trả về PinchAxisVertical;' để tránh chia cho 0; 3. Lưu ý rằng điều này kiểm tra góc của hai ngón tay của bạn đối với nhau, không phải là chuyển động tương đối của các ngón tay của bạn. Lượng giác cơ bản có thể được áp dụng cho một cái gì đó thực sự nhìn vào đồng bằng, nhưng điều này là nhiều hơn "góc của vị trí của ngón tay của bạn" hơn là "góc của sự chuyển động của các ngón tay của bạn". – Rob
Bạn đúng về 'y' cuối cùng cần phải là' x'. Tôi đã sửa nó. Cảm ơn vì đã chú ý đến nó. Tuy nhiên, không cần kiểm tra phân chia bằng 0, vì nó sẽ tạo ra vô cực dấu phẩy động, mà biểu thức điều kiện tiếp theo xử lý chính xác. –