2013-03-14 5 views
0

Я работаю над RSS-приложением, где ему нужно отправить URL-адрес статьи через сообщение. У меня есть этот код до сих пор,iOS Сообщения в приложении Не работает должным образом

MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init] ;{ 
      if([MFMessageComposeViewController canSendText]) 
      { 
       controller.body = @"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]]; 
       controller.recipients = [NSArray arrayWithObjects: nil]; 
       controller.messageComposeDelegate = self; 
       [self presentModalViewController:controller animated:YES]; 
      }} 

И он будет работать, она открывает сообщения в приложении, но все это говорит в сообщении,

Check Out This Information, %@

Когда я сделать то же самое

[NSURL URLWithString:self.feedItem[@"url"]];

для открытия страницы в Safari, он работает, так что это правильно, но я не знаю, как это исправить, пожалуйста, Хель п.

ответ

2

Эта линия:

controller.body = @"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]]; 

эквивалентно

controller.body = @"Check Out This Informtaion, %@"; 
[NSURL URLWithString:self.feedItem[@"url"]]; 

... потому что эти два утверждения выполняются независимо друг от друга.

Как указал пользователь2056143, вам не хватает NSString -stringWithFormat: вокруг ваших значений. I.e .:

controller.body = [NSString stringWithFormat:@"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]]]; 
+0

Я попробую это через несколько минут, не имею доступа к своему Mac прямо сейчас спасибо – Steve

+0

Пока я думаю об этом, вы знаете, что вопрос о переполнении стека для реализации кнопки совместного доступа, например, в сафари ios приложение. Один с иконками и различными вариантами обмена. – Steve

+0

Yep-поиск для UIActivityViewController –

1

Изменить тело:

controller.body = [NSString stringWithFormat:@"Check Out This <a href=\"%@\">Information<\a>", self.feedItem[@"url"]]; 
+1

Я исправил форматирование (запустите строку с 4 пробелами, чтобы сделать код), но я не думаю, что вам нужно использовать HTML для этого; тело сообщения, вероятно, просто текст. –