iOS开发——JS网页交互——javaScript

来源:互联网 发布:迪卡侬 天猫 知乎 编辑:程序博客网 时间:2024/06/06 02:15
JS中调用OC



#import "ViewController.h"@interface ViewController () <UIWebViewDelegate>@end@implementation ViewController- (void)viewDidLoad{    [super viewDidLoad];    // 1.webView    UIWebView *webView = [[UIWebView alloc] init];    webView.frame = self.view.bounds;    webView.delegate = self;    [self.view addSubview:webView];        // 2.加载网页    NSURL *url = [[NSBundle mainBundle] URLForResource:@"test" withExtension:@"html"];    NSURLRequest *request = [NSURLRequest requestWithURL:url];    [webView loadRequest:request];}#pragma mark - UIWebViewDelegate- (void)webViewDidFinishLoad:(UIWebView *)webView{}/** *  webView每当发送一个请求之前,都会先调用这个方法(能拦截所有请求) */- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{    NSString *url = request.URL.absoluteString;    NSRange range = [url rangeOfString:@"hm://"];    NSUInteger loc = range.location;    if (loc != NSNotFound) { // url的协议头是hm,也可以随便起        // 方法名        NSString *method = [url substringFromIndex:loc + range.length];                // 转成SEL//        SEL sel = NSSelectorFromString(method);//        [self performSelector:sel withObject:nil];        [self performSelector:NSSelectorFromString(method) withObject:nil];    }    return YES;}/** *  打电话 */- (void)call{    NSLog(@"call----");}/** *  打开照相机 */- (void)openCamera{    NSLog(@"openCamera----");}@end



HTML网页代码





0 0
原创粉丝点击