在ios中追加带字符串的字符串

sta*_*one 10 iphone

我有一些文本共享到evernote的问题,共享evernote是成功的,但这是我目前的代码情况.我有一个UITableView相应文本的文本和标题.单击共享按钮时,它将一个人共享文本到evernote网站,但标题仍然是静态的.在那里,我得到了第一个标题名称以及不同的文本.我的代码在我的tableview中rowAtIndexPath

NSMutableString *strr=[[NSMutableString alloc]initWithString:[appDelegate.indexArray objectAtIndex:indexPath.section]];
cell.textLabel.text =strr ;
cell.textLabel.text = [appDelegate.indexArray objectAtIndex:row];
cell.textLabel.font = [UIFont fontWithName:@"Georgia" size:14.0]; 
cell.textLabel.textColor = [UIColor brownColor];


[appDelegate.notesArray objectAtIndex:row]];
//cell.detailTextLabel.text =notes;
cell.detailTextLabel.font = [UIFont fontWithName:@"Georgia" size:14.0]; 
cell.detailTextLabel.textColor = [UIColor darkGrayColor];
cell.detailTextLabel.text = [appDelegate.notesArray objectAtIndex:row];
Run Code Online (Sandbox Code Playgroud)

appDelegate.indexArray是每个单元格的标题内容,并appDelegate.notesArray 具有相应标题的文本.

在shareButton中单击:

 NSMutableString *str = [[NSMutableString alloc] initWithString:@"NOTES:"]; 
 for (int i = 0; i<[appDelegate.notesArray count]; i++) { 
        NSString * aString = [[NSString alloc] initWithString:[appDelegate.notesArray objectAtIndex:i]] ;
        NSString * ENML= [NSString stringWithFormat:@"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\">\n<en-note>%@",aString];

    ENML = [NSString stringWithFormat:@"%@%@", ENML, @"</en-note>"];
    NSLog(@"%@", ENML);

    // Adding the content & resources to the note
    [note setContent:ENML];
Run Code Online (Sandbox Code Playgroud)

这将逐一上传notetext.但对于标题我包含此代码

NSMutableString *strtitle = [[NSMutableString alloc] initWithString:@"myBibleApp"]; 
    for (int i = 0; i<[appDelegate.indexArray count];i++ ) { 
        NSString * aStringtitle = [[NSString alloc] initWithString:[appDelegate.indexArray objectAtIndex:i]] ;
       /* NSString *ENMLtitle = [NSString stringWithFormat:@"%@%@", aStringtitle];
        NSLog(@"%@", ENMLtitle);*/

    note.title = aStringtitle;
Run Code Online (Sandbox Code Playgroud)

但这是我的问题,它翻了标题和文字双.这意味着,我有一个带标题的文字.当我点击共享按钮时,它会上传两次.1 = 2,2 = 4,3 = 6就是这样.坚果只添加标题我得到这个问题.如果我将标题设为静态,则note.title = @"statictitle".它不会重复上传.如何以正确的方式附加字符串?请帮我.提前致谢.

ott*_*t-- 18

我注意到两件事:

不需要使用NSMutableString.只写第一个案例

cell.textLabel.text = [appDelegate.indexArray objectAtIndex:indexPath.section];
Run Code Online (Sandbox Code Playgroud)

对于其他两种情况,你根本不使用字符串(或者代码中没有显示).

在for循环中,你总是覆盖aString和aStringtitle,即使是新的alloc也是如此.追加是这样的:

NSString *aString = @"";
for ...
  aString = [aString stringByAppendingString:[appDelegate.indexArray objectAtIndex:i]];
Run Code Online (Sandbox Code Playgroud)

要么

    aString = [aString stringByAppendingFormat:@" %@", [appDelegate.indexArray objectAtIndex:i]];
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请查看NSString类参考.