0

我是 Iphone 编程新手。我的数组存储 UIlabel 以及属性。对于 Exp、Text、TextColor、背景颜色等。现在我想在电子邮件正文中发送所有数组数据。这是我的代码。

    NSUserDefaults *userDefault=[NSUserDefaults standardUserDefaults];
    NSData *myDecodedObject = [userDefault objectForKey: [NSString 
            stringWithFormat:@"sample"]];
    NSArray *arr= [[NSArray alloc] init];
    arr= [NSKeyedUnarchiver unarchiveObjectWithData:myDecodedObject]; 
    NSString *string = [arr componentsJoinedByString:@"\n"];
    NSString *emailBody = string;
    NSLog(@"Testing %@", string);
    [mailer setMessageBody:emailBody isHTML:NO];
    [self presentModalViewController:mailer animated:YES];
    [mailer release];

我的数组显示存储在其中的所有对象并显示字节。此时我的数组包含 5 个 UIlabel。现在我想在电子邮件正文中发送所有这些 UIlabel。但是 NSLog 我看到了这个。

测试UILabel:0x8123760;帧 = (135.5 136; 99 30); 文本 = 'Fddddddddddddddsaafgghjkl ...'; clipsToBounds = YES; 隐藏=是;层=CALayer:0x8161590

UILabel: 0x81619b0; 帧 = (148 323; 69 15); 文本 = 'Xxxxxxxxxxx'; clipsToBounds = YES; 层=CALayer:0x8161a50

UILabel: 0x8161b70; 帧 = (140 341; 56 19); 文本 = 'Xxxxxxx'; clipsToBounds = YES; 层=CALayer:0x81618f0

UILabel: 0x8161d70; 帧 = (69.5 121.5;99 145);文本 = 'Fddddddddddddddsaafgghjkl ...'; clipsToBounds = YES; 隐藏=是;层=CALayer:0x8161e00

UILabel: 0x8161f10; 帧=(108 321;99 145);文本 = 'Fddddddddddddddsaafgghjkl ...'; clipsToBounds = YES; 层=CALayer:0x8161f80

未在电子邮件中看到任何数据。所以请建议在电子邮件中发送数组数据的最佳方法是什么。谢谢

4

1 回答 1

0

使用 MFmailComposer 的 addDataAttachements 方法从数组中添加数据

     NSData *data = [NSKeyedArchiver archivedDataWithRootObject:arr1];
       NSLog(@"Testing %@", data);
      [controller addAttachmentData:data mimeType:@"application/octet-stream";  
      fileName:nil]
于 2012-05-09T11:55:16.680 回答