0

文字列を持つUILabelがあります。文字列内の特定のテキストの間に、太字/斜体/文字記号(登録済みのような) でテキストを追加する必要があります。私のアプリは iOS 4 にも対応しています。そのため、別のラベルを使用してこれら (太字/斜体/文字記号) のテキストを表示しました。

UILabelここでの問題は、を介してテキストにスペースを与えているときですIBOutlet。次の行になりますが、別のラベルを付ける行にスペースが必要です。

期待どおりに動作させるために何か提案してください。どんな助けでも大歓迎です。

4

3 に答える 3

0

ラベルの代わりにテキストビューを使用できます

   UITextView *textView=[[UITextView alloc]init];

NSString *String = [NSString stringWithFormat:@"<div><strong style='color:#3468A5;'>This</strong><strong style='color: #4B4B4B;'>is sample string</strong></div> "];
textView.Frame=CGRectMake(10.,10,5,220);
textView.contentInset = UIEdgeInsetsMake(-10,-6,0,0);
[textView setFont:[UIFont fontWithName:@"HelveticaNeueBold" size:14]];
[textView setBackgroundColor:[UIColor clearColor]];
[textView setScrollEnabled:NO];
[textView setEditable:NO];

 @try
{
    SEL setContentToHTMLString = NSSelectorFromString([@[@"set", @"Content", @"To", @"HTML",   @"String", @":"] componentsJoinedByString:@""]);
    [textView performSelector:setContentToHTMLString withObject:String];
}
@catch (NSException *exception)
{
    // html+css could not be applied to text view, so no kerning
}    
于 2013-08-07T08:33:22.680 に答える
0

各テキストの長さを計算し、それに応じて各ラベルのフレームを設定する必要があります

CGSize size =[titleLabel.text sizeWithFont:titleLabel.font constrainedToSize:CGSizeMake(titleLabel.frame.size.width, 200) lineBreakMode:NSLineBreakByWordWrapping];
于 2013-08-07T08:10:58.863 に答える