2009-12-17 75 views
6

nếu tôi thay đổi khung của UIWebView (thuộc tính scalesPageToFit là YES), tôi phải làm gì khi mức thu phóng của trang web hiện được hiển thị vẫn tồn tại?Thay đổi kích thước khung UIWebView không thay đổi kích thước nội dung bên trong

Giả sử tôi có khung UIWebView với chiều rộng 200 pixel và đã phóng to trang web để chỉ hiển thị một cột. Sau khi thay đổi chiều rộng thành 300, tôi vẫn thấy cột có cùng kích thước và không gian bổ sung ở bên trái và bên phải. Nhưng điều tôi cần là tôi vẫn chỉ nhìn thấy cột này, nhưng lớn hơn.

Bất kỳ ý tưởng nào tôi phải làm để đạt được điều này? Tôi đã thử rất nhiều thứ, nhưng không có gì làm việc cho đến nay.

Nhân tiện, iPhone được xây dựng trong trình duyệt Safari thực hiện chính xác điều này (với cùng trang web, vì vậy nó không liên quan đến nội dung) khi xoay iPhone ... Tôi thấy cùng nội dung, lỗi lớn hơn, KHÔNG có nhiều nội dung hơn nó xảy ra với phiên bản mã hiện tại của tôi.

Cảm ơn bạn đã trợ giúp! Markus

+0

Bạn đã thử mọi thứ từ phía web của mọi thứ chưa? CSS hoặc JS? – TahoeWolverine

+0

Bạn đã tìm thấy giải pháp nào chưa ?? Xin hãy giúp tôi, tôi đang đối mặt với cùng một vấn đề. – Mangesh

Trả lời

0

Bạn đã đặt gì cho UIViewContentMode của chế độ xem web (cũng có thể được đặt trong IB trong "Chế độ" của Chế độ xem)? Vì bạn đang thay đổi kích thước chế độ xem, nó có thể có liên quan đến việc này. Chỉ cần một shot trong bóng tối kể từ khi tôi đã không thử nó nhưng hy vọng điều này sẽ giúp.

Bạn cũng có thể thử tắt scalePageToFit trước khi chuyển đổi và bật lại sau.

1

EDIT: Câu trả lời tốt hơn:

mjdth là đúng, bạn có thể sử dụng contentMode tài sản trên UIWebView. Rất đơn giản:

webView.contentMode = UIViewContentModeRedraw; 

Cũ, câu trả lời tào lao:

này đã làm việc cho tôi, nhưng tôi đã làm việc với các trang địa phương và một lượng nhỏ nội dung:

-(void)layoutSubviews 
{ 
    // Cause web view to reload content in order to display at new frame size 
    [webView reload]; 
} 

tôi d thích nhìn thấy một giải pháp tốt hơn mà không liên quan đến việc tải lại trang mặc dù!

+0

Dường như gọi [tải lại webView] (khi webView.frame được thay đổi) là giải pháp duy nhất hiện tại. –

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