2011-02-07 40 views
29

Tôi đã xem cuộn và ở cả hai bên, tôi có hai nút trái và phải.iphone - ngăn không cho uiscrollview di chuyển bằng cách chạm

khi tôi nhấp vào chế độ xem cuộn sẽ di chuyển sang trái và khi nút bên phải được nhấp, nó sẽ di chuyển sang phải. Scrollview của tôi có 20 nút (khoảng) & trên nhấp chuột của mỗi nút một số hành động được thực hiện.

Mọi thứ được triển khai hoàn hảo và hoạt động tốt.

Điều duy nhất tôi không thể triển khai là ngăn không cho cuộn bằng cách chạm. Tôi không muốn người dùng cuộn scrollview theo cách thủ công. Làm thế nào tôi có thể ngăn không cho nó di chuyển bằng cách chạm và vẫn có thể nhấp vào các nút bên trong scrollview?

+4

này nghe có vẻ như một vấn đề lớn bạn đang giới thiệu. Bạn đang viết mã cho một thiết bị hướng liên lạc, nơi mọi người quen thuộc với việc cuộn bằng cách kéo ngón tay của họ và đó là hành động tự nhiên nhất. Tôi chỉ muốn thôi thúc bạn xem xét lại thiết kế của bạn. Hãy nghĩ về người dùng của bạn. – jer

+0

Nếu bạn không muốn cảm ứng hoạt động, tại sao bạn lại sử dụng scrollview? Chỉ cần sử dụng UIView bình thường. – fishinear

Trả lời

88

Thử đặt yourScrollView.scrollEnabled = NO;. Điều đó nên làm chính xác những gì bạn muốn.

+3

Tôi nhận được điều đó là không được phép vì vậy hãy thử thiết lập nó thông qua phương thức setter '[scrollView setScrollEnabled: NO];' – virindh

+3

'yourScrollView.isScrollEnabled = false' là cú pháp đúng nếu bạn sử dụng Swift. – Markus

+0

Tỷ lệ rất tốt của upvotes để ký tự-trong-câu trả lời! Cám ơn. –

0

Nếu các nút đó là giao diện duy nhất cho người dùng, hãy tắt tùy chọn 'Tương tác người dùng đã bật' của chế độ xem cuộn trong Trình tạo giao diện. Hoặc, lập trình, đặt userInteractionEnabled thuộc tính thành NO.

1

Swift, đặt scrollView.isScrollEnabled = false và nó sẽ hoạt động!

0

Swift 3

self.scrollView.isScrollEnabled = false 
Các vấn đề liên quan