Tôi có một số MKMapView
với đại biểu đã đăng ký để tôi có thể nghe các sự kiện thay đổi khu vực (cụ thể là regionDidChangeAnimated). Tôi đang tìm một cách mạnh mẽ để nói nếu sự kiện thay đổi khu vực là kết quả của việc người dùng kéo bản đồ hoặc từ yêu cầu setRegion:
có lập trình.Làm thế nào tôi có thể biết khi nào sự kiện regionChange trên MKMapView là chương trình hoặc kéo người dùng của MKMapView?
Mục tiêu của tôi là có ứng dụng tự động căn giữa bản đồ dựa trên theo dõi vị trí, trừ khi người dùng đã quét bản đồ bằng tay, tại thời điểm tự động định tâm sẽ tắt. Vì vậy, tôi đang gọi setRegion: để recenter xem bản đồ là thích hợp, nhưng tôi có một thời gian khó nói nếu kết quả cuộc gọi regionDidChangeAnimated:
cho các đại biểu là lập trình hoặc từ một người sử dụng chảo. Tôi đã thử hack một cái gì đó với nhau, nhưng tôi tiếp tục chạy vào điều kiện chủng tộc khi người dùng bắt đầu panning cũng giống như một bản cập nhật vị trí đến.
Đã xảy ra sự cố này. Mã của bạn là một giải pháp tốt đẹp. Đó là một chút hacky, nhưng không phải là xấu vì nó vẫn đọc như tiếng Anh tốt. Nó chỉ là một cờ boolean :) – chakrit