天天看点

IOS中调用系统拨打电话与发送短信

[[uiapplication sharedapplication] openurl:[nsurl urlwithstring:[nsstring stringwithformat:@"tel://%@",_phonenumber]]];

调用系统的发送短信的界面,需要引入以下头文件:

#import <messageui/messageui.h>

系统短信界面的调用很简单,只需下面几句代码:

<a href="http://my.oschina.net/u/2340880/blog/408115#">?</a>

1

2

3

4

5

<code>         </code><code>mfmessagecomposeviewcontroller * con = [[mfmessagecomposeviewcontroller alloc]init];</code>

<code>            </code><code>if</code> <code>([mfmessagecomposeviewcontroller cansendtext]) {</code>

<code>                </code><code>con.recipients=@[_phonenumber];</code><code>//电话数组</code>

<code>                </code><code>con.messagecomposedelegate=self;</code>

<code>                </code><code>[self presentviewcontroller:con animated:yes completion:nil];</code>

下面将messageui的一些常用方法总结如下:

+ (bool)cansendtext

判断是否支持发送文字

+ (bool)cansendsubject;

判断是否支持发送主题信息

+ (bool)cansendattachments;

判断是否支持发送附件

+ (bool)issupportedattachmentuti:(nsstring *)uti;

判断是否支持统一标示附件

- (void)disableuserattachments;

禁止发送附件

@property(nonatomic,copy) nsarray *recipients;

联系人数组,会显示在发送人列表里

@property(nonatomic,copy) nsstring *body;

信息主体内容

@property(nonatomic,copy) nsstring *subject;

信息标题

@property(nonatomic,copy, readonly) nsarray *attachments;

信息附件数组 只读的 里面是字典

- (bool)addattachmenturl:(nsurl *)attachmenturl withalternatefilename:(nsstring *)alternatefilename;

根据url路径和添加附件,返回yes表示添加成功

- (bool)addattachmentdata:(nsdata *)attachmentdata typeidentifier:(nsstring *)uti filename:(nsstring *)filename;

根据data数据添加附件

- (void)messagecomposeviewcontroller:(mfmessagecomposeviewcontroller *)controller didfinishwithresult:(messagecomposeresult)result;

mfmessagecomposeviewcontrollerdelegate的代理方法,result会传回来一个结果,枚举如下:

6

7

8

<code>enum</code> <code>messagecomposeresult {</code>

<code>    </code><code>//取消发送</code>

<code>    </code><code>messagecomposeresultcancelled,</code>

<code>    </code><code>//发送成功</code>

<code>    </code><code>messagecomposeresultsent,</code>

<code>    </code><code>//发送失败</code>

<code>    </code><code>messagecomposeresultfailed</code>

<code>};</code>