2014-04-22 19 views
6

Tôi có a libgdx game sử dụng scene2d cho giao diện người dùng. Tôi có một số trường hợp ImageButton với số riêng là ClickListener. Trên một số thiết bị (chỉ nhìn thấy nó trên Samsung Galaxy S3 và Samsung Galaxy S4 Active cho đến nay) có một vấn đề với sự kiện không được giao trừ khi một cú nhấp chuột hai lần một cách nhanh chóng.Sự kiện không được gửi tới người nghe

Mỗi khi một nhấp chuột không giống như sau được đăng nhập:

04-22 16:10:09.678: D/InputReader(728): Input event: value=1 when=20897610551000 
04-22 16:10:09.678: I/InputReader(728): Touch event's action is 0x0 (deviceType=0) [pCnt=1, s=0.889 ] when=20897610612000 
04-22 16:10:09.678: I/InputDispatcher(728): Delivering touch to: action: 0x0 
04-22 16:10:09.678: I/InputDispatcher(728): Delivering touch to: action: 0x3 
04-22 16:10:09.688: W/InputEventReceiver(728): Attempted to finish an input event but the input event receiver has already been disposed. 
04-22 16:10:09.688: W/InputEventReceiver(728): Attempted to finish an input event but the input event receiver has already been disposed. 
04-22 16:10:09.688: V/WindowManager(728): Window{43478730 u0 Keyguard}mOrientationRequetedFromKeyguard=false 
04-22 16:10:09.698: D/STATUSBAR-StatusBarManagerService(728): manageDisableList what=0x0 pkg=WindowManager.LayoutParams 
04-22 16:10:09.788: D/InputReader(728): Input event: value=0 when=20897720902000 
04-22 16:10:09.788: I/InputReader(728): Touch event's action is 0x1 (deviceType=0) [pCnt=1, s=] when=20897720902000 

tôi giả báo cáo kết quả Đã cố gắng để kết thúc một sự kiện đầu vào nhưng người nhận sự kiện đầu vào đã được xử lý. là chìa khóa ở đây, nhưng tôi không thể thực sự thấy lý do tại sao nó sẽ làm việc khi một cú nhấp chuột một lần nữa một cách nhanh chóng.

Lý do có thể là gì? Làm thế nào tôi có thể gỡ lỗi này thêm để có được để dưới cùng của điều này? Bất kì manh mối nào?

Chỉnh sửa: Tất cả các dòng nhật ký trừ hai dòng cuối cùng xuất hiện khi chạm xuống, trong khi hai dòng cuối xuất hiện khi chạm vào. Trình xử lý sự kiện của tôi dành cho khi nhấp chuột.

Trả lời

1

Tôi đã tìm ra nguyên nhân gây ra sự cố. Tôi gặp sự cố với the volume button bug in KitKat và đã thêm một biến thể của các cách giải quyết (https://stackoverflow.com/a/21253443/467650, https://plus.google.com/+MichaelLeahy/posts/CqSCP653UrW).

Tôi đã có thể khắc phục sự cố "chạm đúp" bằng cách giảm thời gian trễ trước khi chạy trình xử lý xóa thanh điều hướng, nhưng lại không hoạt động tốt với KitKat. Tất nhiên tôi có thể kiểm tra phiên bản Android của ứng dụng đang chạy, nhưng khi giải pháp thay thế thì thực sự rất khó để bắt đầu với việc tôi xóa tất cả chúng lại với nhau.

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