这可能吗?
该应用程序将有一个按钮和一个文本字段或文本视图。
用户在文本字段或文本视图中键入电话号码。当用户完成后,用户按下将在iPhone中打开消息或SMS应用程序的按钮。
我该怎么做?如果可能请提供一些代码! :)
提前谢谢!
答案 0 :(得分:8)
查看MessageComposer Sample App和MFMessageComposeViewController Class。
然后您可以执行此类操作,但您应首先检查设备上是否实际可用MFMessageComposeViewController
(请参阅MessageComposer示例):
MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];
picker.messageComposeDelegate = self;
picker.recipients = [NSArray arrayWithObjects:@"1234", @"2345", nil];
picker.body = yourTextField.text
[self presentModalViewController:picker animated:YES];
[picker release];
您需要先导入MessageUI.framework
(see this answer)。
通过#import <MessageUI/MessageUI.h>
将其导入您的课程,然后在.h文件中添加<MFMessageComposeViewControllerDelegate>
,例如像这样:
#import <UIKit/UIKit.h>
#import <MessageUI/MessageUI.h>
@interface YourClass : UIViewController <MFMessageComposeViewControllerDelegate>
{
// ...
答案 1 :(得分:6)
另一种简短的方法,可以更好地帮助任何人:)
NSString *sms = @"sms:+1234567890&body=This is sms body.";
NSString *url = [sms stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
答案 2 :(得分:0)
在Swift 3.0中
static func sendMessageToNumber(number:String,message:String){
let sms = "sms:\(number)&body=\(message)"
let url = URL(string:sms)!
let shared = UIApplication.shared
if(shared.canOpenURL(url)){
shared.openURL(url)
}else{
print("unable to send message")
}
}