Nella mia app sto utilizzando uno UIWebView
. Normalmente funziona bene, ma c'è una situazione in cui l'app riceve un avviso di memoria e alla fine si blocca.L'app riceve avvisi di memoria e si blocca quando si carica il file HTML con molti video di YouTube in UIWebView
ho caricare il contenuto con questo:
[self.webView loadHTMLString:htmlString baseURL:baseURL];
C'è un caso in cui htmlString
ha dentro oltre 25 video di YouTube (questa non è la mia idea - è la pagina web che sto ricevendo). Quindi in questo caso, l'app riceve alcuni avvisi di memoria e alla fine si blocca.
Come posso gestire questa situazione? È possibile caricare il file HTML in vari passaggi?
Non so se questo ha qualcosa a che fare con esso, ma sto impostando la dimensione UIWebView
- e anche la dimensione del contenuto di una vista a scorrimento che racchiude la vista Web - dinamicamente. Questo è il codice:
- (void) webViewDidFinishLoad:(UIWebView *)webView
{
// Adaptamos las vistas al contenido y ocultamos el indicador de actividad
// Ponemos el webView del tamaño justo del contenido
CGRect frame = webView.frame;
// Hace falta cambiar la height porque si no, no coge los cambios. Visualmente no se ve diferencia
frame.size.height = 1;
webView.frame = frame;
CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
frame.size.height = fittingSize.height;
webView.frame = frame;
// Movemos el botón y lo ponemos donde acabe el webView
CGRect buttonFrame = self.visitSiteButton.frame;
buttonFrame.origin.y = frame.origin.y + frame.size.height + 20;
self.visitSiteButton.frame = buttonFrame;
// Ampliamos el contenSize del scrollview general para que quepa todo el webView
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width, self.visitSiteButton.frame.origin.y + self.visitSiteButton.frame.size.height + 10);
}
Grazie mille,
Carlos
Sì, lo so. Ma è il file che sto ricevendo ... E non è facile da modificare perché non ho il controllo sul contenuto HTML che ricevo.È il contenuto dei feed RSS. – Carlos
se ha una struttura, è possibile analizzarlo e gestire il modo in cui è necessario. immagina un lettore di rss che visualizza 5 voci alla volta ... è fattibile per certo ... – sergio
Il problema è che sto ottenendo i dati da fonti diverse (diversi feed rss) e ogni sorgente ha una struttura diversa. Anche le notizie diverse da ogni feed possono essere diverse (un file html completamente diverso) – Carlos