ios截取号码

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

{

    NSString *url = request.URL.absoluteString;

    

    if ([url hasPrefix:@"tel:"]) {

        DLog(@"url%@",url);

        

        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"" message:[NSString stringWithFormat:@"是否拨打电话%@",url] delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"拨打", nil];

        

        [alertView show];

    }

  

    NSRange range = [url rangeOfString:@"tel:"];

    NSUInteger loc = range.location;

    if (loc != NSNotFound) { // url的协议头是hm

        // 方法名

        NSString *method = [url substringFromIndex:loc + range.length];

        DLog(@"method%@",method);

        // 转成SEL

        // 是否拨打电话400-690-6898

        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"" message:[NSString stringWithFormat:@"是否拨打电话%@",method] delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"拨打", nil];

        

        [alertView show];

//        SEL sel = NSSelectorFromString(method);

//        [self performSelector:sel withObject:nil];

    }

    

    return YES;

 

}

    

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex

{

   

//    DLog(@"buttonIndex%@",alertView.message);

    NSRange range = [alertView.message rangeOfString:@"是否拨打电话"];

    NSUInteger loc = range.location;

//    DLog(@"%zd",loc);

 if (loc != NSNotFound) {

 

    NSString *str = [alertView.message substringFromIndex:loc + range.length];

    str = [str substringToIndex:str.length -1];

     

     DLog(@"%@",str);

 

     

 }

    if (1==buttonIndex) {

        [[UIApplication sharedApplication]openURL:[NSURL URLWithString:str]];

    }

    

}

 

【微分享】:闲时多读书,博览聚才气;众前慎言行,低调养清气。

原文地址:https://www.cnblogs.com/supersr/p/5320341.html