2010-09-05 5 views
3

j'ai une image codée en base64 que je récupère à partir d'un serveur et que la charge dans un UIWebView avec:image ne peut pas être zoomé quand chargé dans UIWebView

[webViewer loadData:[NSData decodeBase64ForString:imageData] MIMEType:@"image" textEncodingName:@"ASCII" baseURL:nil]; 

Les charges d'image bien mais lorsque l'image est plus grand que mon webviewer, l'utilisateur ne peut pas zoomer et sortir en pinçant l'iphone comme dans tous les autres documents UIWebView.

L'utilisateur peut déplacer l'image pour voir l'image entière mais comme il ne peut pas effectuer de zoom arrière, il ne peut pas voir l'image entière dans la taille de l'image UIWebView .

Est-ce que quelqu'un a une solution à ce problème. Merci.

Répondre

3

Ajouter à votre WebView HTML, utilisez essentiellement une balise d'image et placer la balise meta dans le code HTML chaîne

NSString * header = @"<meta name='viewport' content='width=320; initial-scale=1.0; maximum-scale=2.0; user-scalable=1;'/>" 
NSString * html = [NSString stringWithFormat:@"<html>%@<img src='%@'/></html>",header,imageData] 
[webView loadHTMLString:html baseURL:nil]; 
+2

Aaron merci pour les conseils, mais il n'y a pas HTML. Dans ce cas, loadData charge les données d'image brutes dans un UIWebView. – Zigglzworth

+0

@ user427034 essayez cette nouvelle approche, voir les modifications –

+0

En utilisant 'content = 'width = device-width; échelle maximale = 3,0; user-scalable = 1; ''J'ai obtenu non seulement un ajustement automatique de la largeur de la largeur de ma webview, mais aussi un zoom automatique sur la taille optimale, comme si l'on avait appuyé deux fois sur la vue. –

Questions connexes