2010-07-27 58 views
8

Tôi có chế độ xem web.Cách thêm chế độ xem phụ vào một chế độ xem trên web để chế độ xem phụ sẽ cuộn cùng với chế độ xem web?

Bây giờ tôi muốn thêm một chế độ xem phụ vào nó. Tôi đã thêm nó bằng phương thức addsubview.

Chế độ xem đã được thêm, nhưng không được cuộn với chế độ xem web.

Tôi muốn xem phụ đề của mình với chế độ xem web.

Tôi có thể làm như thế nào?

Trân trọng, Akshay.

+0

Thật kỳ lạ khi thêm chế độ xem phụ vào chế độ xem web. Bạn đang cố làm gì vậy ? –

+0

Đây là giải pháp http://stackoverflow.com/q/43533068/6521116 –

Trả lời

0

Để làm điều đó, bạn sẽ cần phải nhắn tin với nội bộ của UIWebView và tìm hiểu hệ thống phân cấp của khung nhìn, vì vậy bạn có thể thêm chế độ xem phụ bên trong trình chọn.

Có thể dễ dàng tinh chỉnh HTML của bạn bên trong chế độ xem, vì vậy bạn có thể bao gồm nội dung nào đó tương tự như chế độ xem tùy chỉnh (văn bản hoặc hình ảnh) trong đó.

Sau đó, bạn có thể tương tác với "chế độ xem giả mạo" qua Javascript.

+0

Có thể nếu tôi có đối tượng UIWebView không? Tôi phải làm việc với đối tượng webView hiện tại và không thể tạo đối tượng mới bằng cách phân lớp. –

17

Bạn chỉ cần thêm subview của bạn vào UIScrollView của UIWebView như thế này để có cuộn subview của bạn với nội dung webview:

[webView.scrollView addSubview:youSubView]; 
+1

Để lưu nội dung, thuộc tính 'scrollView' đã được thêm vào iOS 5.0. –

+0

thực sự chỉ có sẵn sau iOS 5.0, nhưng đây là một mẹo tuyệt vời; tôi chỉ sử dụng nó để cho phép spinner của tôi để tải vào một webView được đặt với các giới hạn của UIWebView. hoàn hảo! –

+0

nó chỉ có thể giúp tôi thêm tối đa 126 lượt xem của –

0

Hãy thử điều này, nó sẽ làm việc

[[[yourwebview subviews] objectAtIndex: 0] addSubview: yoursubview];

0

Giả sử bạn muốn uiview của mình trên một khu vực có id phim trong html. Kiểm tra số post tại đây.

func scrollViewDidScroll(_ scrollView: UIScrollView) { 
    self.wk.evaluateJavaScript("var rect = document.getElementById('movie').getBoundingClientRect();[rect.left, rect.top];") { 
     (result, error) -> Void in 
     print(result) 
     self.player.view.frame.origin.x = (result as! Array)[0] 
     self.player.view.frame.origin.y = (result as! Array)[1] 
    } 
} 
Các vấn đề liên quan