UILabels如何以数字格式显示

时间:2013-04-03 05:07:13

标签: iphone objective-c uilabel

有没有办法像这样显示UILabel

  • XXXXXX
  • XXXXXX
  • XXXXXX

  1. xxxxx
  2. XXXXX
  3. XXXXX
  4. XXXXX
  5. 我将获取UILabel中的数据以及动态显示的标签数量。

1 个答案:

答案 0 :(得分:1)

建立自iAmbitious的评论:

第一种情况:

NSArray *array = [NSArray arrayWithObjects:@"One",@"Two",@"Three", nil];    
NSMutableString *compoundString = [NSMutableString string];
NSString *bulletString = [NSString stringWithFormat:@"%C",0x2022];

for (NSString *str in array) {
    NSString *tempString = [NSString stringWithFormat:@"%@ %@\n",bulletString,str];
    [compoundString appendString:tempString];
}

self.textView.text=compoundString;

第二种情况: 将for循环替换为以下for循环 -

for (NSString *str in array) {
        NSString *tempString = [NSString stringWithFormat:@"%d. %@\n",[array indexOfObject:str]+1,str];
        [compoundString appendString:tempString];
    }

以上使用了文本视图。如果要使用标签将行数设置为零,并动态设置标签的高度,如下所示。你可以实现同样的目标:

CGSize lineSize = [@"DummyString" sizeWithFont:self.label.font] ;
CGFloat labelHeight = lineSize.height*array.count;
CGRect tempFrame = self.label.frame;
tempFrame.size.height=labelHeight;
self.label.frame=tempFrame;