2012-12-04 33 views
5

Tôi đang cố gắng triển khai thị sai theo chiều ngang trên chế độ xem trang phân trang, giúp chế độ xem xuất hiện nhanh hơn theo hướng x nhưng "đất" trong cùng một vị trí (ví dụ: 0,0)). Dưới đây là tổng quát thiết lập/xem hệ thống cấp bậc của tôi:Di chuyển Parallax ngang UIScrollView iOS

  • (trong suốt cuộn, mà chặn/đi qua cuộn sự kiện)
  • (object overlay mà tôi muốn chuyển 1.2x tốc độ theo hướng x , nhưng doesn 't vượt qua nó 'điểm hạ cánh')
  • (overlay khác mà tôi muốn di chuyển với tốc độ 1.0x theo hướng x )

tôi biết nó phải làm điều gì đó với sửa đổi contentOffset và tôi có dele của tôi cổng tất cả các thiết lập để tất cả họ có thể di chuyển ở tốc độ 1x trong cùng một hướng ... bất kỳ gợi ý nào cho giải pháp?

Trả lời

3

Nếu bạn muốn giữ thiết lập hiện tại, tất cả những gì bạn cần làm là sử dụng phương thức ủy nhiệm -(void)scrollViewDidScroll:(UIScrollView *)scroller với trình cuộn của bạn đang theo dõi các sự kiện cuộn. Trong phương pháp này, bạn sẽ theo dõi bù đắp nội dung và sau đó sử dụng hệ số tốc độ của bạn để di chuyển các chế độ xem khác theo cách bạn muốn.

Tuy nhiên bạn có thể dễ dàng thực hiện điều này chỉ với 2 lần xem cuộn và khi di chuyển bạn theo dõi contentOffset trong cùng phương thức ủy quyền -(void)scrollViewDidScroll:(UIScrollView *)scroller và di chuyển khác theo đó.

Hơn nữa, nếu hai scrollviews có kích thước khác nhau, một hiệu ứng thị sai tự nhiên là vô cùng dễ dàng để đạt được theo dõi contentOffset trong phương pháp -(void)scrollViewDidScroll:(UIScrollView *)scroller đại biểu và sau đó sử dụng các giá trị và của contentSize scrollview để có được một tỷ lệ như thế nào đến nay scrollview đã di chuyển và sau đó chỉ cần đặt contentOffset của scrollview phụ để cuộn phần trăm đó là contentSize.

Hãy cho tôi biết nếu bạn cần giải thích thêm.

+0

Làm cách nào để có chế độ xem phụ để truy cập cùng một vị trí mỗi lần? Nên contentSize của cả hai scrollers là như nhau? Các ứng dụng là Instago trên cửa hàng ứng dụng, tôi muốn các hộp màu trong trình chiếu trên trang chủ hiển thị vị trí để di chuyển ở một tỷ lệ khác nhau sau khi chạm vào. Tôi cần các lớp để di chuyển với tốc độ khác nhau và tôi không quá chắc chắn cách di chuyển các lớp như một tỷ lệ phần trăm của người khác sẽ giúp đạt được hiệu ứng này. – nmock

+0

Nếu bạn muốn tải xuống ứng dụng có ảnh hưởng đến tôi, hãy xem https://itunes.apple.com/us/app/american-revolution-interactive/id489614145?mt=8 (miễn phí). Trong ứng dụng này, mặt sau và dòng thời gian (tiền cảnh) có độ rộng khác nhau. Vì vậy, mỗi di chuyển cùng một tỷ lệ phần trăm nhưng 10% của nền trước nhiều pixel hơn 10% nền để tiền cảnh xuất hiện để di chuyển nhanh hơn. Nếu bạn muốn tiếp tục xem cùng một nội dungKích thước bạn vẫn có thể chọn di chuyển nhanh hơn nhưng sau đó di chuyển nhanh hơn sẽ phải ngừng di chuyển trước khi di chuyển chậm hơn. –

+0

Tính năng này có phù hợp với bạn không? –