2010-05-25 6 views
0

J'ai ce code-iPhone WebApp Question

/** Enregistrer la vue Web comme une capture d'écran. Prend actuellement en charge uniquement l'enregistrement à la photothèque. / - (void) saveScreenshot: (NSArray) arguments withDict: (NSDictionary *) Options { CGRect screenRect = [[UIScreen mainScreen] limites]; CGRect imageRect = CGRectMake (0, 0, CGRectGetWidth (screenRect), CGRectGetHeight (screenRect));

UIGraphicsBeginImageContext(imageRect.size); 
[webView.layer renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 
UIImageWriteToSavedPhotosAlbum(viewImage, self, nil, nil); 

UIAlertView *alert= [[UIAlertView alloc] initWithTitle:nil 

message: @ "image enregistrée" délégué: auto cancelButtonTitle: @ "OK" otherButtonTitles: nil]; [alerte]; [libération d'alerte];

}

Ceci est pour sauver tout ce que vous avez dessiné dans mon application. Comment ajouter le bouton pour cela dans le code HTML. Comment puis-je l'appeler?

Répondre

1

Vous essayez donc d'envoyer un événement de html à un UIWebView?

La méthode la plus simple consiste à utiliser un schéma privé. Dans le code html:

<a href="myscheme:save_picture">Take Picture</a> 

Dans le délégué UIWebView:

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType { 
    NSString *string = [[[inRequest URL] absoluteString] lowercaseString]; 
    if ([string isEqualToString:@"myscheme:save_picture"]) { 
     [self savePicture]; 
     return NO; 
    } 
    return YES; 
} 

Vous pouvez regarder PhoneGap pour une utilisation plus robuste de ce mécanisme.