2015-08-09 13 views
6

Tôi tự hỏi làm thế nào Twitter thực hiện màn hình hồ sơ của nó. Lúc đầu, tôi nghĩ rằng nó là một cái nhìn bảng với một tiêu đề (thông tin hồ sơ) và tiêu đề phần (điều khiển phân đoạn để chọn tweets/media/favorites). Nó sẽ có ý nghĩa đối với tôi khi thông tin hồ sơ biến mất trong khi người dùng cuộn xuống, nhưng vẫn kiểm soát phân đoạn, và đó chính xác là hành vi của chế độ xem tiêu đề UITableView và tiêu đề phần đơn giản. Ngoài ra còn có một cái nhìn hình ảnh ở trên cùng, dưới thanh điều hướng, nhưng đó không phải là điều quan trọng đối với tôi. Dưới đây là một hình dung về những gì tôi nghĩ rằng đó là:Màn hình hồ sơ Twitter trong phiên bản iOS được xây dựng như thế nào?

Twitter profile screen architecture (my visualization)

tôi đã cố gắng để tái tạo nó trong Interface Builder và đó là những gì tôi có. Thanh trượt thu hút sự chú ý của tôi: nó khác với ứng dụng Twitter, nó bắt đầu ở đầu tiêu đề xem bảng, không phải ở đầu ô.

My implementation in Interface Builder Twitter's slider is different

... Vì vậy, làm thế nào họ đạt được điều đó? Họ đã đặt UITableView trong UIScrollView và tự xử lý các sự kiện chạm/cuộn? Tôi không nghĩ như vậy, vì nó chán nản, nhưng tôi không thể nghĩ ra lời giải thích khác.

+0

Kích thước thanh trượt biểu thị lượng nội dung bên dưới. Thanh trượt nhỏ hơn - nhiều thứ khác để cuộn. – njuri

+0

@njuri Tôi biết, đó không phải là vấn đề. Mối quan tâm của tôi là trong thanh trượt triển khai của tôi bắt đầu ở đầu chế độ xem tiêu đề bảng, trong ứng dụng Twitter, nó bắt đầu ở đầu các ô. Nó không bao giờ di chuyển trên thông tin điều khiển hoặc thông tin hồ sơ được phân đoạn. –

+0

@raven_raven Tôi đang xem xét điều này ngay bây giờ. Bạn đã quản lý để tìm một giải pháp? Đặt cược của tôi là họ đang chơi xung quanh với thiết lập các chỉ số di chuyển inset trên di chuyển - vì vậy tôi sẽ được chơi xung quanh với điều này và cho bạn biết nếu tôi thành công. – dandoen

Trả lời

4

Tôi không chắc chắn về thanh trượt, nhưng here họ đã thực hiện công việc khá tốt với chế độ xem tiểu sử trên Twitter bắt chước. Vì vậy, hãy xem kỹ hơn, có thể bạn sẽ thấy điều này hữu ích.

+0

Cảm ơn bạn, có vẻ tốt, nhưng nó có cùng một vấn đề chính xác: thanh cuộn di chuyển trên toàn bộ khung nhìn, không chỉ các ô. –

0

Bạn có thể điều chỉnh chiều cao của chỉ số cuộn để ngồi bên dưới tiêu đề của bạn sử dụng

tableView.scrollIndicatorInsets = UIEdgeInsetsMake(yOffset, 0, 0, 0) 

yOffset sẽ là hiện hành về chiều cao màn hình tiêu đề của bạn. Nếu bạn điều chỉnh điều này khi người dùng cuộn xuống bằng cách sử dụng phương thức scrollViewDidScroll từ UIScrollViewDelegate, nó sẽ đạt được hiệu quả thay đổi suôn sẻ mà twitter sử dụng.

This page đi vào chi tiết hơn về cách tạo hiệu ứng hồ sơ twitter, xây dựng trên phương pháp được mô tả trong liên kết do njuri cung cấp ở trên bao gồm việc thay đổi thanh cuộn để được định vị chính xác.

+0

Thêm thông tin tại đây. Liên kết có thể không khả dụng. –

+0

Trang đó đi vào chi tiết hơn. Vậy bạn có thể. Đây không phải là câu trả lời. – Drew

+0

Cảm ơn phản hồi, tôi đã chỉnh sửa câu trả lời để phản ánh. – davedavedave

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