添加類方法,然後直接調用
+ (void)callPhoneStr:(NSString*)phoneStr withVC:(UIViewController *)selfvc{if (phoneStr.length >= 10) {NSString *str2 = [[UIDevice currentDevice] systemVersion];if ([str2 compare:@"10.2" options:NSNumericSearch] == NSOrderedDescending || [str2 compare:@"10.2" options:NSNumericSearch] == NSOrderedSame){NSString* PhoneStr = [NSString stringWithFormat:@"telprompt://%@",phoneStr];[[UIApplication sharedApplication] openURL:[NSURL URLWithString:PhoneStr] options:@{} completionHandler:^(BOOL success) {NSLog(@"phone success");}];}else {NSMutableString* str1 = [[NSMutableString alloc]initWithString:phoneStr];// 存在堆區,可變字串if (phoneStr.length == 10) {[str1 insertString:@"-"atIndex:3];// 把一個字串插入另一個字串中的某一個位置[str1 insertString:@"-"atIndex:7];// 把一個字串插入另一個字串中的某一個位置}else {[str1 insertString:@"-"atIndex:3];// 把一個字串插入另一個字串中的某一個位置[str1 insertString:@"-"atIndex:8];// 把一個字串插入另一個字串中的某一個位置}NSString * str = [NSString stringWithFormat:@"是否撥打到電話\n%@",str1];UIAlertController *alert = [UIAlertController alertControllerWithTitle:str message: nil preferredStyle:UIAlertControllerStyleAlert];// 設定popover指向的itemalert.popoverPresentationController.barButtonItem = selfvc.navigationItem.leftBarButtonItem;// 添加按鈕[alert addAction:[UIAlertAction actionWithTitle:@"呼叫" style:UIAlertActionStyleDestructive handler:^(UIAlertAction *action) {NSLog(@"點擊了呼叫按鈕10.2下");NSString* PhoneStr = [NSString stringWithFormat:@"tel://%@",phoneStr];if ([PhoneStr hasPrefix:@"sms:"] || [PhoneStr hasPrefix:@"tel:"]) {UIApplication * app = [UIApplication sharedApplication];if ([app canOpenURL:[NSURL URLWithString:PhoneStr]]) {[app openURL:[NSURL URLWithString:PhoneStr]];}}}]];[alert addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) {NSLog(@"點擊了取消按鈕");}]];[selfvc presentViewController:alert animated:YES completion:nil];}}}