Trong một trong các ứng dụng của tôi, tôi sử dụng lại một lần xem web. Mỗi lần người dùng nhập vào một điểm nào đó trên dữ liệu tải lại cache cho webview sử dụng phương pháp này: -UIWebView được sử dụng hiển thị nội dung đã tải trước đó trong một giây ngắn trên iPhone
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
và tôi chờ đợi cuộc gọi callback
- (void) webViewDidFinishLoad:(UIWebView *)webView.
Đồng thời, tôi ẩn chế độ xem web và hiển thị nhãn 'đang tải'. Chỉ khi tôi nhận được webViewDidFinishLoad để tôi hiển thị chế độ xem web.
Nhiều lần những gì xảy ra tôi thấy các dữ liệu trước đó đã được nạp vào webview trong một giây ngắn ngủi trước khi dữ liệu mới, tôi nạp đá trong.
tôi đã thêm một sự chậm trễ 0,2 giây trước khi hiển thị các webview nhưng nó không giúp được gì.
Thay vì giải quyết điều này bằng cách thêm nhiều thời gian hơn để sự chậm trễ không ai biết làm thế nào để giải quyết vấn đề này hoặc có thể dữ liệu cũ rõ ràng từ một webview mà không phát hành và phân bổ nó mỗi thời gian?
Thật sao? Đó là một điều thực sự câm của Apple để xem xét Webview là tốn kém để tạo ra – hfossli
Đó là lý do tại sao tôi muốn sử dụng lại chúng ngay từ đầu. Nhưng các kỹ sư của Apple nhấn mạnh rằng họ không có nghĩa là để được tái sử dụng (ít nhất là vào thời điểm đó trong cuộc sống khi iOS4 vừa được giới thiệu). Tôi phải thừa nhận rằng kể từ khi tôi thực hiện lời khuyên của ông, tôi đã không gặp phải vấn đề nữa. – Roi
Vâng .. Tôi không thể sống mà không tái sử dụng xem xét nó đắt tiền đến mức nào. Nó hoạt động tốt cho tôi bằng cách sử dụng @ "about: blank" -trick ... – hfossli