Tôi có một ứng dụng sử dụng các sự kiện chạm để vẽ trên màn hình. Tôi sử dụng UITouch locationInView
để trả lại số CGPoint
của liên lạc. Vấn đề là các tọa độ x và y luôn giống nhau - NHƯNG chỉ trên các thiết bị thế hệ thứ hai chạy iOS 4.2.1 VÀ chỉ khi ứng dụng của tôi được xây dựng trong chế độ Phát hành. Điều này cũng chỉ có vẻ là một vấn đề khi chạm trực tiếp từ một đối tượng sự kiện touchesMoved
hoặc touchesEnded
vì các nút của tôi phản hồi chạm chính xác.Tác động của việc sử dụng LLVM-GCC để giải quyết các vấn đề trên thiết bị thế hệ thứ hai chạy iOS 4.2.1
Nhờ một bài đăng ở http://getmoai.com/forums/new-users/ios-touch-sensor-y-co-ordinate-always-the-same-as-x/ tôi đã có thể khắc phục vấn đề bằng cách sử dụng trình biên dịch LLVM-GCC hơn là trình biên dịch mới LLVM 3.0 và bằng cách sử dụng tối ưu hóa mức 0.
là gì thú vị là sử dụng GCC trình biên dịch đã sửa các vị trí cảm ứng tôi nhận được trong touchesEnded
trong khi thay đổi mức tối ưu hóa thành -O0
đã sửa các vị trí cảm ứng mà tôi đã nhận được trong touchesMoved
. Tôi không thể giải thích tại sao điều này, nhưng bây giờ tôi ngây ngất ứng dụng của tôi đang làm việc trên các thiết bị này.
Câu hỏi của tôi sau đó là - Những nhược điểm khi phân phối ứng dụng của tôi đến cửa hàng bằng trình biên dịch cũ hơn là gì? (Tôi hiểu tác động của mức tối ưu hóa.) Và có cách nào để cấu hình dự án để tôi sử dụng trình biên dịch cũ hơn và mức tối ưu hóa thấp hơn chỉ dành cho thiết bị iOS 4.2.1 và/hoặc thế hệ thứ 2 không?
cùng một vấn đề ở đây, bạn đã tìm thấy gì chưa? –