2012-02-29 36 views
16

Tôi có UITableView để vẽ một chế độ xem phụ khi người dùng chạm vào một ô.tắt tương tác cảm ứng trong UITableView

Vấn đề là bản vẽ subView là hoạt ảnh và nếu người dùng đủ nhanh, họ có thể nhấn vào một ô nhiều lần mà tôi muốn tắt trong khi hoạt ảnh và sau đó.

Tôi đã cố gắng sử dụng này:

- (void) tableView: (UITableView*) tableView didSelectRowAtIndexPath: (NSIndexPath*) indexPath { 

    [[UIApplication sharedApplication] beginIgnoringInteractionEvents]; 

và cũng là một biến bool:

if (isAnimating == NO) { 

nhưng không có vẻ làm việc. Trong mỗi trường hợp, chạm nhanh sẽ đẩy mọi thứ lên.

Mọi trợ giúp sẽ rất tuyệt vời!

Trả lời

36

Hãy thử này ... Sau khi nhấp vào tế bào thiết

tableView.userInteractionEnabled = NO; 
+4

.userInteractionEnabled = FALSE; Công trinh! – itgiawa

+8

Sử dụng NO thay cho BOOL trong mục tiêu-C, không sử dụng False hoặc FALSE – Edgar

+0

Ok, bạn có thể vui lòng cho tôi biết sự khác biệt từ NO đến FALSE không? –

2

Tôi biết đây là một câu hỏi cũ tuy nhiên nó thiếu phiên bản nhanh chóng như vậy, trong Swift 3 đó là:

tableView.isUserInteractionEnabled = false; 

và bật lại là:

tableView.isUserInteractionEnabled = true; 

Chỉ cần nghĩ rằng m sẽ giúp ai đó nếu họ đang tìm kiếm câu trả lời trong 3 nhanh như tôi, và kết thúc ở đây.

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