Tüm programlama işinde çok yeniyim ve bir sonraki görünümün yükleme simgesi görüntülenmeyecek şekilde iphone programında UIWebView
içeriğini temizlemek için herhangi bir yol olup olmadığını merak ediyordum son görüşün önünde. Çok teşekkürler, ThomasBir UIWebView Nasıl Temizlenir
cevap
URL'yi about:blank
olarak ayarlamayı deneyin ve sayfayı yeniden yükleyin.
Sadece dokümantasyon amaçlı belki başkası yardımcı olmak için
[self.webView loadHTMLString:@"" baseURL:nil];
no 'baseURL' ayarlanmasına gerek yok ... [self.webView loadHTMLString: @ "" baseURL: nil]; –
@ChrisAllinson önerilerinize göre bunu basitleştirdim – 2cupsOfTech
Özellikle bir baseURL –
Cevap uzantısı içine boş bir html dize yük:
aynı arzuyu (sonraki url yüklemeden önce net içeriği) vardı ama bir UIWebView delegesi,webviewDidFinishLoad:(UIWebView)webview
mesajını almak ve yanıt olarak UI'nin başka bir bölümünü güncellemek için ayarlanmıştı.
Sorun: Çağrı içerik temizlemek için de böylece (yanlış-hits almak temsilci yöntemi denir yani net de yapılır, ama temsilci gerçek içeriğidir sadece çağrı beklemek kodlanmış zaman çağrı alma yüklü).
Çözüm: berrak için bilinen URL kullanmak ve bu URL'nin bittiğinde webviewDidFinishLoad:
yapılan çağrıları görmezden vardır:
- (void) startLoadOfNextURL:(NSURL*)url
{
// clear:
[self.webView loadHTMLString:@"" baseURL:nil];
// Load real next URL
NSURLRequest* request = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:request];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSLog(@"WebView finished loading: %@", webView);
if ([self.webView.request.URL.absoluteString isEqualToString:@"about:blank"]) {
NSLog(@" This is Blank. Ignoring as false event.");
}
else {
NSLog(@" This is a real url");
[self updateUIInSomeWay];
}
}
Not:
[self.webView loadHTMLString:@"about:blank" baseURL:nil];
aslında yaklaşık kelimeleri" neden: Bu kullanarak : boş "webview'in içerik panelinde metin olarak görünecek!
Son Komplikasyon: Pratikte, benim iki [webview load...]
çağrılarım birbirine çok yaklaştığında, açık için "yüklenen" bir etkinlik yerine, web görünümünün ikinci istek lehine iptal ettiğini ve webView: didFailLoadWithError:
numaralı telefonun ilk yükleme talebi. Böylelikle, bu olay benzer bir kod koymak zorunda:
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
NSLog(@"WebView error on: %@", webView);
NSLog(@"Error is: %@", error);
NSURL* failingURL = [error.userInfo objectForKey:@"NSErrorFailingURLKey"];
if ([failingURL.absoluteString isEqualToString:@"about:blank"]) {
NSLog(@" This is Blank. Ignoring.");
}
else {
NSLog(@" This is a real URL.");
[self doSomethingAboutError];
}
}
Swift, Xcode 7 beta 5
webView.loadRequest(NSURLRequest(URL: NSURL(string: "about:blank")!))
geçirmedikçe işe yaramadığını buldum. Teşekkürler. –
Swift 4.0, 9
webView.loadRequest(URLRequest.init(url: URL.init(string: "about:blank")!))
- 1. WKWebView'da geçmiş nasıl temizlenir?
- 2. Bir dizi nasıl temizlenir
- 3. Bir DatePicker nasıl temizlenir
- 4. Bir UIWebView
- 5. Bir android mm nasıl temizlenir?
- 6. Bir UIWebView
- 7. UIwebview
- 8. UIWebView
- 9. Sözlük nasıl temizlenir?
- 10. mongodb konsolunda nasıl temizlenir
- 11. UIWebview
- 12. PowerShell'de $ Error nasıl temizlenir?
- 13. ajax yanıtı nasıl temizlenir
- 14. MKMapView önbelleği nasıl temizlenir?
- 15. Önyükleme satırları nasıl temizlenir?
- 16. İpython'daki değişkenler nasıl temizlenir?
- 17. İplikte önbellek nasıl temizlenir?
- 18. UIWebView
- 19. UIWebView
- 20. : UIWebView
- 21. ImageView nasıl temizlenir? Örneğin
- 22. ASP.NET datagrid nasıl temizlenir?
- 23. Dize akışı nasıl temizlenir?
- 24. Smarty's Önbelleği nasıl temizlenir
- 25. NTabakabilir: filtreler nasıl temizlenir
- 26. UIWebView'ımın loadHtmlString'i için önbellek nasıl temizlenir?
- 27. Redis - Flushdb'den sonra bellek nasıl tamamen temizlenir/temizlenir?
- 28. Django RQ işleri bir kuyruktan nasıl temizlenir?
- 29. InlineFormSet'te belirli bir alan nasıl temizlenir?
- 30. Pencerelerde saydam bir denetimdeki grafikler nasıl temizlenir
Teşekkür Mate XCODE, ben u oy verir miydiniz kadar ama kendimi yeterince rütbe yok –
Rica ederim! –
"webViewDidFinishLoad" temsilci yöntemi ile sonuçlanmayan bir alternatifin farkında mısınız? (nil'ing delegesi çalışılamıyor: açık bir şekilde gerçek içeriğin başka bir yükü tarafından takip ediliyor, bu yüzden hızlı bir şekilde cevap vermesi durumunda delege hazırlığı var ... bu nedenle ilk yükten sonra delege kapatılmalı, daha sonra açılmalı ikinci yük, ancak hepsi uyumsuzdur, bu yüzden ilk yük bitene kadar engelleyemiyorum). –