3

我创建了一个应用程序,其中包含表单并且必须填写适当的文本字段。现在我需要在文本字段中获取所有数据并将其发送到电子邮件中。这是我撰写电子邮件的代码

- (IBAction)compose:(id)sender 
{
if (text1.text=@"" && text2.text=@"" && text3.text=@"" && text4.text=@"" && text5.text=@"") {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Failure" 
                                                    message:@"Please enter all the field details" 
                                                   delegate:nil 
                                          cancelButtonTitle:@"OK" 
                                          otherButtonTitles: nil];
}
                                                                             else{


if ([MFMailComposeViewController canSendMail])
{
    MFMailComposeViewController *mailer = [[MFMailComposeViewController alloc] init];

    mailer.mailComposeDelegate = self;

    [mailer setSubject:[NSString stringWithFormat:@"Appointment From Mr/Mrs. %@",text1.text]];

    NSArray *toRecipients = [NSArray arrayWithObjects:@"xxx@xxxx.com", nil];
    [mailer setToRecipients:toRecipients];



    NSString *emailBody =[NSString stringWithFormat:@"Name =%@\nDate= %@\nPreferred Time Slot= %@\nE-Mail=%@\nSpecific Requests=",text1.text,text2.text,text3.text,text4.text,text5.text]; 
    [mailer setMessageBody:emailBody isHTML:NO];


    [self presentModalViewController:mailer animated:YES];

    [mailer release];
}
else
{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Failure" 
                                                    message:@"Your device doesn't support the composer sheet" 
                                                   delegate:nil 
                                          cancelButtonTitle:@"OK" 
                                          otherButtonTitles: nil];
    [alert show];
    [alert release];
}
}

}

如果所有文本字段为空,则必须弹出警报。但我遇到错误?...请指导我..

4

5 回答 5

12

如果您想知道如何从 textfield 获取文本并将其发送,您将需要使用 textfield.text

NSString *emailBody = textField.text;
[mailer setMessageBody:emailBody isHTML:NO];
于 2012-06-26T10:53:51.620 回答
1

可以有两种方式——

  1. 您可以为您的文本字段创建属性,然后myTextField.text在您想要的地方访问。

  2. 当文本字段有一些文本时,您可以创建一个NSString属性并为此设置值。

于 2012-06-26T10:54:37.267 回答
1
 //this is one single line which return your textFiledData

 your_text_field.text
于 2012-06-26T10:54:58.770 回答
1

为您的文本字段创建一个变量,例如 IBOutlet UITextField * textFieldVar; 并将其连接到笔尖中的文本字段,然后使用以下代码您可以从文本字段中获取文本

 NSString *emailBody = textFieldVar.text;
于 2012-06-26T11:17:39.657 回答
1

您可以通过附加特定格式的字符串来根据需要创建电子邮件正文,例如用户 ID:223984775(来自 textfieldUserID 的值)名称:XYZ(来自 textfieldName 的值)......

您可以通过在用户移动到下一个要输入的文本字段时附加字符串来做到这一点。

使用 Nsstring "stringWithFormat" 方法将数据附加到正文中。使用 \n 和 \t 为电子邮件正文提供表格结构。也使用格式

于 2012-06-27T04:23:26.200 回答