2011-09-24 41 views
9

A UIScrollView trong phân cấp chế độ xem của tôi đang hoạt động sôi nổi bất cứ khi nào tôi trình bày một bộ điều khiển chế độ xem ở trên nó. Nó tự động điều chỉnh độ lệch nội dung và di chuyển nội dung của tôi xuống khoảng 40 pixel. Tôi không thể tìm ra cách để ngăn chặn điều này.UIScrollView thay đổi nội dung bù đắp trên hiện tạiModalViewController

Sau khi mò mẫm, tôi đã tìm thấy rằng presentModalViewController bằng cách nào đó kích hoạt phương thức riêng _adjustContentOffsetIfNecessary trên UIScrollView của tôi và đây là những gì đang thay đổi bù trừ.

Bất kỳ ý tưởng nào nếu đây là lỗi trên phần của Apple? Hoặc là một cái gì đó nhận được đặt screwy trong UIScrollView của tôi? Dù sao để vô hiệu hóa phương pháp này _adjustContentOffsetIfNecessary hoặc ít nhất là tác dụng phụ này?

+0

FYI, tôi đang làm việc xung quanh điều này với một loại phương pháp ViewController presentModalViewController tôi rằng tiết kiệm là vấn đề UIScrollView contentOffset và sau đó bộ nó trở lại. Tôi cũng tải lại dữ liệu trong hệ thống phân cấp UIView khi tôi bỏ quaModalViewController. Tôi vẫn muốn tìm một giải pháp thanh lịch hơn vì tôi không nhất thiết phải tải lại dữ liệu và điều này có chi phí xử lý –

+0

Bạn đã thử đặt thuộc tính 'scrollEnabled' thành NO & sau đó quay lại YES? – Akshay

+0

Tôi sẽ thử điều đó. Có vẻ như một sửa chữa lạ –

Trả lời

0

Mặc dù nó không phải là ưa thích, tôi giải quyết này đặt lại bù đắp nội dung trong viewDidAppear của presentingViewController.

0

Hãy thử thiết lập các automaticallyAdjustsScrollViewInsets tài sản của ViewController của bạn, có chứa các UIScrollView, để "KHÔNG"

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