如何给NSString iphone换行

时间:2011-08-17 18:57:09

标签: iphone nsstring line-breaks nsmutablestring

我正试图将行程发布到Facebook作为旅行应用程序的附件,我正在使用NSMutableString附加所有行程事件和日期,但我不知道如何在事件发生后换行。

这是我的代码:

- (void)postItineraryToWall:(NSArray*)itineraryList{

    NSMutableString *description = [NSMutableString string];

    for (Itinerary *it in itineraryList) {  
        [description appendString:[NSString stringWithFormat:@"Evento: %@", it.event]];   
        [description appendString:[NSString stringWithFormat:@" en %@", it.place]];   
        [description appendString:[NSString stringWithFormat:@" el %@", it.eDate]];     
    }

        FBStreamDialog* dialog = [[[FBStreamDialog alloc] init] autorelease];   dialog.userMessagePrompt = @"Enter your message:";      dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"Conectado desde TravelFan iPhone App\",\"caption\":\"Compartiendo itinerario\",\"description\":\"%@ \",\"media\":[{\"type\":\"image\",\"src\":\"http://www.site.com.mx/content/templates/default/images/logo_travel.jpg\",\"href\":\"http://www.site.com.mx/\"}]}", description];   dialog.actionLinks = @"[{\"text\":\"Obten App!\",\"href\":\"http://www.site.com.mx/\"}]"; [dialog show];

}

我尝试在附加的最后一个字符串中使用\ n但由于附件已经有一个字符串格式,其中包含许多\和“当我测试它时,它不会显示附件文本,如果我测试它没有\ n它显示所有内容但是像这样一行:

活动:博览会在某些博物馆12/12/2011 12:00活动:expo2 at some

   博物馆13/12/2011 13:00 ....

我希望它看起来像这样:

活动:一些博物馆的博览会12/12/2011 12:00
   活动:一些博物馆的展览会13/12/2011 13:00
   ....

编辑:当我使用\ n并使用NSLog打印时,一切都是我想要的方式,但附件文本没有出现在Facebook对话框屏幕中,不知何故\ n \ n影响整个附件文本。

希望有人能帮助我。 非常感谢!! XD

2 个答案:

答案 0 :(得分:2)

为什么你不使用它:

[description appendString:[NSString stringWithFormat:@"Evento: %@\n", it.event]];

答案 1 :(得分:0)

NSString的换行符是\ r

使用正确的方法[NSString StringWithFormat:@"%@ \ r%@",string1,string2];

\ r ---- - >回车