• IOS 开发,调用打电话,发短信,打开网址


    1、调用 自带mail

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://admin@hzlzh.com"]];

     

    2、调用 电话phone

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8008808888"]];

     

    3、调用 SMS

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];

     

    4、调用自带 浏览器 safari

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.hzlzh.com"]];

     

    调用phone可以传递号码,调用SMS 只能设定号码,不能初始化SMS内容。

     

    若需要传递内容可以做如下操作:

    加入:MessageUI.framework

     

    #import <MessageUI/MFMessageComposeViewController.h>

     

    实现代理:MFMessageComposeViewControllerDelegate

     

     

     

    调用sendSMS函数

    //内容,收件人列表

    - (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients

    {

     

        MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];

     

        if([MFMessageComposeViewController canSendText])

     

        {

     

            controller.body = bodyOfMessage;   

     

            controller.recipients = recipients;

     

            controller.messageComposeDelegate = self;

     

            [self presentModalViewController:controller animated:YES];

     

        }   

     

    }

     

    // 处理发送完的响应结果
    - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
    {
      [self dismissModalViewControllerAnimated:YES];
     
      if (result == MessageComposeResultCancelled)
        NSLog(@"Message cancelled")
      else if (result == MessageComposeResultSent)
        NSLog(@"Message sent")  
      else 
        NSLog(@"Message failed")  
    }

     

     

    发送邮件的为:

    导入#import <MessageUI/MFMailComposeViewController.h>

    实现代理:MFMailComposeViewControllerDelegate

     

    //发送邮件

    -(void)sendMail:(NSString *)subject content:(NSString *)content{

     

        MFMailComposeViewController *controller = [[[MFMailComposeViewController alloc] init] autorelease];

     

        if([MFMailComposeViewController canSendMail])

     

        {

     

            [controller setSubject:subject];

     

            [controller setMessageBody:content isHTML:NO];

     

            controller.mailComposeDelegate = self;

     

            [self presentModalViewController:controller animated:YES];

     

        }    

    }

     

    //邮件完成处理

    -(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{

     

        [self dismissModalViewControllerAnimated:YES];

     

        if (result == MessageComposeResultCancelled)

            NSLog(@"Message cancelled");

        else if (result == MessageComposeResultSent)

            NSLog(@"Message sent"); 

        else 

            NSLog(@"Message failed");  

     

    }

     

     

     

     

    默认发送短信的界面为英文的,解决办法为:

    在.xib 中的Localization添加一組chinese就ok了

  • 相关阅读:
    想要学习编程?不如来玩玩这15款游戏!总有一款适合你!
    C++ 高级教程:C++ 文件和流
    4个小众Chrome插件,最后一个互联网人必备!
    程序员必读,熬夜是如何摧残你的身体的!
    教育部将编程教育纳入中小学相关课程,编程正成为全球语言!
    Windows 比 Linux 好?我有 13 个反对理由
    程序员的十八般兵器库,捋一捋这近几年程序员们日常工作中常用的开源工具
    how to train yolov4 on custom dataset
    How to Perform Object Detection With YOLOv3 in Keras
    YOLOv4 / Scaled-YOLOv4 / YOLO
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3038742.html
Copyright © 2020-2023  润新知