Вы можете использовать класс MFMessageComposeViewController, , как описано в Apple .
Для этого сначала добавьте MessageUI.framework в ваш проект.
// в файле .h внести следующие изменения
#import <MessageUI/MessageUI.h>
#import <MessageUI/MFMessageComposeViewController.h>
@interface YourViewController: UIViewController <MFMessageComposeViewControllerDelegate>
// затем в файле .m сделайте следующее.
- (void)viewDidLoad {
[super viewDidLoad];
SMSLabel = [[UILabel alloc] initWithFrame:CGRectMake(30.0, 340.0, 260.0, 30.0)];
SMSLabel .frame = CGRectMake(30.0, 340.0, 260.0, 30.0);
SMSLabel .adjustsFontSizeToFitWidth = YES;
SMSLabel .hidden = YES;
SMSLabel .text = @"";
SMSLabel .userInteractionEnabled = NO;
SMSLabel.alpha=0.0;
[self.view addSubview:SMSLabel ];
}
-(void)ComposerSheet
{
MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];
picker.messageComposeDelegate = self;
picker.recipients = [NSArray arrayWithObject:@"1234567"];
picker.body = @"iPhone OS4";
[self presentModalViewController:picker animated:YES];
[picker release];
}
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
SMSLabel.alpha=1.0;
switch (result)
{
case MessageComposeResultCancelled:
SMSLabel .text = @"Result: canceled";
NSLog(@"Result: canceled");
break;
case MessageComposeResultSent:
SMSLabel .text = @"Result: sent";
NSLog(@"Result: sent");
break;
case MessageComposeResultFailed:
SMSLabel .text = @"Result: failed";
NSLog(@"Result: failed");
break;
default:
SMSLabel .text = @"Result: not sent";
NSLog(@"Result: not sent");
break;
}
[self dismissModalViewControllerAnimated:YES];
}