2013-10-30 17 views
7

Tôi đã nhận thấy rằng chạm Không được luôn luôn nhận được gửi đến một SKScene trên cảm ứng đa điểm. Tùy thuộc vào tốc độ loại bỏ các ngón tay vv, tôi sẽ vĩnh viễn bỏ lỡ một số touchesEnded. touchesCancelled được triển khai và tôi đã thêm UIView tùy chỉnh và đặt phía bên trái của màn hình - không có vấn đề gì. Tôi đã tạo một SKView tùy chỉnh và các sự kiện đã chụp - một lần nữa không có vấn đề gì.SpriteKit SKScene mất tích touchEnded

Rõ ràng là SKScene không nhận được tất cả các chạm Chạm vào SKView nó được nhúng vào, nhưng tại sao?

(BTW, tôi chạy SKScene hoàn toàn không có bất kỳ nút)

EDIT:

Một số nghiên cứu thêm cho thấy tôi có thể nhận SKScene để mất một cảm ứng hoàn toàn:

tôi đặt 3 ngón tay trên màn hình sau đó loại bỏ từng cái một cho đến khi chỉ chạm một ngón tay. Tôi di chuyển ngón tay -> chỉ SKView nhận được sự kiện di chuyển, SKScene không. Nó cũng không nhận được touchesEnded.

Sau một số thử nghiệm, tôi có thể nói rằng điều đó xảy ra khi một touchesBegan nhận được nhiều hơn rồi chạm 1 lần trong cuộc gọi (ví dụ: bạn nhấn hai ngón tay "đồng thời"). Hai chạm này sau đó bị vướng víu để chỉ một trong số họ gửi các sự kiện.

Điều này dường như là lỗi trong SKScene. Tôi đang thử nghiệm trên iPhone 5. Nó sẽ

+0

mọi trình nhận dạng cử chỉ đang chạy? đa cảm ứng được bật? nhận được nhiều lần chạm đã kết thúc trong một sự kiện duy nhất? – LearnCocos2D

+0

@ LearnCocos2D không có công cụ nhận dạng cử chỉ (chỉ chạy SKLene đơn giản làm thử nghiệm), đã bật cảm ứng đa điểm. Tôi nhận được nhiều lần chạm trong một lần chạm duy nhấtBegan và tôi cũng liệt kê các điểm nhấn khác trong sự kiện. Các liên lạc bị mất chỉ đơn giản biến mất khỏi allTouches khi tôi phát hiện một chạm sauEnded. – Nuoji

Trả lời

2

Có thể bạn đang sử dụng một số cử chỉBộ nhận dạng? Họ có thuộc tính cancelsTouchesInView và giá trị mặc định là . Thay đổi nó thành NO giải quyết được sự cố của tôi.

+0

Không, tôi đã thực hiện một chế độ xem hoàn toàn trống để kiểm tra. – Nuoji

Các vấn đề liên quan