Tôi đã bật UIScrollView
khi bật phân trang và tôi đã thêm UIPanGestureRegonizer
của riêng mình vào đó. Trong một số trường hợp nhất định, trình điều khiển chế độ xem của tôi sẽ đặt scrollview.scrollEnabled = NO
và sau đó thêm trình nhận dạng cử chỉ di chuyển vào nó (Tôi không sử dụng trình nhận dạng riêng của scrollview).Cuộn liên tục giữa UIPanGestureRecognizer và bật lại UIScrollView
Vì vậy, việc di chuyển bị tắt nhưng tôi đang đợi người dùng chạm vào từ trình nhận dạng cử chỉ của tôi. Khi nó nhận ra, nó gọi hành động của nó trong đó tôi kích hoạt lại cuộn.
Vấn đề là, trong khi người dùng vẫn còn một ngón tay xuống, scrollview của tôi không theo dõi bằng ngón tay. Nó không bắt đầu di chuyển cho đến khi ngón tay được nhấc lên và sau đó kéo lại. Vì vậy, công cụ nhận dạng cử chỉ của tôi đang nuốt tất cả các thao tác chạm và không chuyển tiếp bất kỳ thao tác nào đến scrollview.
Tôi đã cố gắng chuyển đổi panGestureRecognizer.cancelsTouchesInView = NO;
nhưng dường như không có hiệu lực (tôi hiện đang xóa trình nhận dạng này ngay khi tôi bật lại cuộn nhưng liệu tôi có thực hiện việc này hay không không giải quyết được sự cố của mình) . Tôi cũng đã xem xét các thuộc tính delays...
của UIGestureRecognizer
nhưng chúng dường như không giúp được gì.
Bất kỳ ý tưởng nào? Làm thế nào tôi có thể nhận được những sự kiện này để tiếp tục chuyển tiếp đến scrollview của tôi?
Bạn có cố gắng trở về 'YES' trong 'gestureRecognizer: shouldRecognizeSimultaneouslyWithGestureRecognizer:' phương pháp? – Hejazi
@Hejazi Có, tôi đã thực hiện phương thức ủy nhiệm đó (và thiết lập ủy nhiệm của tôi) nhưng nó không được gọi khi ngón tay vẫn còn xuống (chỉ một lần tôi đã nâng lên và đặt ngón tay xuống lần nữa để thực hiện phương thức ủy nhiệm này) . – jbrennan