以编程方式在UITextField中附加数据

时间:2011-07-20 07:27:16

标签: iphone

我正在创建一份报告&在UITextView上打印相同的内容。我的报告有一些标题和相应的字幕。我正在打印第一个标题,然后是副标题&然后是第二个标题及其副标题等。我想要标题和字幕的不同字体和字体大小。 但问题是文本字段总是打印最后一个副标题。如果有人知道这个问题的解决方案,请告诉我。

以下是我在.m文件中的圆顶

     - (void) printData {
       // data is UITextView object
       [data setFont:[UIFont fontWithName:@"Helvetica" size:15]];
       NSString *title = @"TITLE" ;
       data.text = title;
       [data setFont:[UIFont fontWithName:@"Arial" size:15]];
       NSString *subtitle = @"SUBTITLE" ;
       data.text = subtitle;
     }

2 个答案:

答案 0 :(得分:3)

首先,我会使用UITextView代替UITextField,因为它是为长文本构建的。

如果您只是继续调用UITextFieldUITextView的方法文字,则当前居住的文字将替换为您的上一个文字。为避免这种情况,您必须将新文本附加到已驻留在UITextFieldUITextView的文本中。

NSString *appendThisText = @"subtitle";
self.myTextView.text=[NSString stringWithFormat:@"%@%@", self.myTextView.text, appendThisText];

至于字体。 font属性适用于整个UITextFieldUITextView内容。

在您的情况下,您可以使用UIWebView并使用HTML呈现文本。

答案 1 :(得分:1)

另一种方式:

[myTextView setText:[myTextView.text stringByAppendingString:@"my string"]];

或者使用\ n换行符:

[myTextView setText:[myTextView.text stringByAppendingString:@"\nMy string"]];