由UIWebView的javascript调用的自定义UIAlertView



我有一个自定义警报,当按下uiwebview内部的按钮时,会调用javascript:

函数doSomething(事件){警报("简单测试");return false;}我希望"alert"打开我的自定义uialert。有可能吗?感谢

发现对我有用的代码:

@interface UIWebView (JavaScriptAlert) 
- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;
@end
@implementation UIWebView (JavaScriptAlert)
- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame {
    UIAlertView* dialogue = [[UIAlertView alloc] initWithTitle:nil message:message delegate:nil cancelButtonTitle:@"Okay" otherButtonTitles:nil];
    UIImage *theImage = [UIImage imageNamed:@"MdC_Base_PopUp.png"];
    theImage = [theImage stretchableImageWithLeftCapWidth:16 topCapHeight:16];
    CGSize theSize = [dialogue frame].size;
    UIGraphicsBeginImageContext(theSize);
    [theImage drawInRect:CGRectMake(0, 0, dialogue.frame.size.width, dialogue.frame.size.height)];
    theImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    dialogue.layer.contents = (id)[theImage CGImage];
    [dialogue show];
    [dialogue autorelease];
}
@end

最新更新