2012-05-04 21 views
6

Tôi đã xem this nice effect và tôi muốn sử dụng một cái gì đó tương tự trong một ứng dụng mà tôi đang thiết kế tại thời điểm này. Tôi giả định rằng đây không phải là một trong những chuyển tiếp 'chuẩn'.Xem iOS hoạt hình 'gấp'

Có ai biết làm thế nào một cái gì đó như thế có thể đạt được? Tôi không thực sự sau khi một mẫu mã chi tiết, nhiều hơn một tổng quan cấp cao/di chuyển theo đúng hướng.

Trả lời

6

tôi sẽ làm điều đó như thế này:

  1. Tạo hai lớp:. Một cho phía bên trái và một cho phía bên phải của giao diện bạn sẽ muốn gấp

  2. Trong những lớp , làm cho hình ảnh bên trái hoặc bên phải của chế độ xem được xếp theo thứ tự tương ứng. Phương pháp renderInContext: nên thực hiện điều này trong hầu hết các trường hợp.

  3. Vị trí ban đầu của hai lớp nằm ở cạnh trái của màn hình (x = 0,0). Đặt điểm neo của lớp bên trái thành (0.0, 0.5) và lớp bên phải là (1.0, 0.5). Bạn cũng nên gán một phép biến đổi xoay quanh trục y thành các lớp: -90 độ cho lớp bên trái và +90 độ cho lớp bên phải (hoặc cách khác xung quanh, tôi không chắc chắn; hãy thử nó ra).

  4. Bây giờ, khi người dùng kích hoạt hành động gấp, bắt đầu hoạt ảnh (hoặc đi cùng với cử chỉ) đặt lại các biến đổi của hai lớp thành ma trận nhận dạng. Bạn cũng có thể phải điều chỉnh vị trí của lớp phù hợp để nó không bám vào cạnh trái của màn hình.

  5. Chỉ khi các hình ảnh động/cử chỉ hoàn tất, bạn thay thế hai lớp (chỉ chứa một hình ảnh tĩnh) với quan điểm thực tế mà bạn muốn gấp.

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