objective-c - ios--后台返回信息有字符串和数字组成的,如何获取电话号码,让用户能够点击并且进行拨打?
大家讲道理
大家讲道理 2017-04-17 17:50:39
0
2
308

请教个问题:后台返回的json数据,有字符串和数字组成的信息。如何获取其中的电话号码,让其能够点击并且进行拨打。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

Antworte allen(2)
大家讲道理

把json数据获取到后,用NSString统一接受字符串和数字,在对其检测,一般手机号长度都是固定的。就可以 最后将这个子串获取后,在加上tel://就可以了

刘奇
-(void)callPhone:(NSString*)phoneNumber{
  NSString *phoneStr=[NSString stringWithFormat:@"tel://%@",phoneNumber];
  NSURL *url=[NSURL URLWithString:phoneStr];
  [[UIApplication sharedApplication] openURL:url];
}

    NSString *string;
    NSString *pattern;

    pattern=@"\\d*";

    string=@"s100s110s111jdlfj18203092902lsd";


    NSError *error;
    NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:pattern options:NSRegularExpressionCaseInsensitive error:&error];

    NSLog(@"%@",error);

    [regex enumerateMatchesInString:string options:NSMatchingReportProgress range:NSMakeRange(0, string.length) usingBlock:^(NSTextCheckingResult * _Nullable result, NSMatchingFlags flags, BOOL * _Nonnull stop) {
     if (NSMatchingReportProgress==flags) {

      }else{
        /**
         *  系统内置方法
         */
        if (NSTextCheckingTypePhoneNumber==result.resultType) {
          NSLog(@"%@",[string substringWithRange:result.range]);
        }
        /**
         *  长度为11位的数字串
         */
        if (result.range.length==11) {
          NSLog(@"%@",[string substringWithRange:result.range]);
        }
      }
    }];
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage