2012-04-18 24 views
12

Tôi đã tạo một dự án dựa trên bảng phân cảnh. Trong chế độ xem của trình điều khiển chế độ xem, yêu cầu phải thêm một số yếu tố bổ sung để tăng chiều cao xem sao cho chế độ xem giờ đây có thể cuộn được. Có thể đơn giản thay đổi loại lớp UIView thành UIScrollView trong bảng phân cảnh không? Nó sẽ thực sự chuyển đổi UIView cấp cao nhất để UIScrollView? Chỉ cần tìm một cách nhanh chóng và dễ dàng để làm điều này mà không có nhiều thay đổi.iOS: Thay đổi phân lớp từ UIView thành UIScrollView trong bảng phân cảnh

Cảm ơn

Trả lời

3

Bạn cần phải thay đổi kiểu UIView để UIScrollView (Thanh tra danh tính) và bộ điều khiển "viewDidLoad" phương pháp giao cho xem một contentSize bằng cách thi triển nhằm một UIScrollView:

[(UIScrollView *)self.view setContentSize:CGSizeMake(320, 700)]; 
0

Một phương pháp dễ dàng hơn là chỉ cần sử dụng chế độ xem cuộn và đặt nội dung có cùng kích thước với khung - vì vậy không có vùng cuộn được. ví dụ:

scrollview.contentsize = CGSizeMake(320,480); 

sau đó khi bạn cần làm cho chế độ xem của mình lớn hơn, chỉ cần cập nhật điều này theo yêu cầu. Bạn sẽ cần phải đảm bảo rằng thư bị trả lại bị tắt nếu không bạn vẫn có thể kéo xung quanh scrollView.

3

Thực sự có một cách tốt hơn để thực hiện việc này.

  1. Chuyển đổi mở UIView trong StoryBoard và cắt vào khay nhớ tạm của bạn bất kỳ nội dung nào trong đó.
  2. Xóa UIView.
  3. Chèn đối tượng UIScrollView vào StoryBoard của bạn.
  4. Dán từ khay nhớ tạm của bạn vào đối tượng mới này.

Phương pháp này sẽ bảo toàn tất cả cài đặt đại biểu và IBOutlet mà bạn đã định cấu hình cho mọi thứ bên trong chế độ xem.

+0

Nếu bạn sẵn sàng để nó lộn xộn hơn một chút so với cần thiết, bạn có thể có 'UIScrollView' bên trong' UIView'. Điều đó cũng hoạt động. –

+13

Phá vỡ các ràng buộc mặc dù – Ixx

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