如何实现标签

时间:2013-12-24 12:38:35

标签: ios iphone objective-c tags

我正在开发一个应用程序,我需要为每个讨论和每个评论显示标记,如下图所示。我从这样的服务中获取标签。

tags =             (
                Registration,
                Apps,
                PublicSpeaking,
                Marketing,
                Sales
            );

我希望这些标签显示在给定图像的“标签”部分下。

enter image description here

这就是我试图实现的方式,任何类型的教程或链接都会非常有用。

for (int i=0; i< [self.menuListArray count]; i++) {
    NSString *tag_string = [self.menuListArray objectAtIndex:i];
    CGSize tagSize = [tag_string sizeWithFont:[UIFont fontWithName:@"Roboto-Light" size:13.0]
                         constrainedToSize:CGSizeMake(230, FLT_MAX)
                             lineBreakMode:UILineBreakModeTailTruncation];
    UIImageView *tag_bgimage = [[UIImageView alloc]init];
    [tag_bgimage setFrame:CGRectMake(i*tagSize.width+5, stringSize.height+5, tagSize.width+4, 25)];
    [tag_bgimage setBackgroundColor:[UIColor grayColor]];
    [tag_bgimage setUserInteractionEnabled:NO];

    UILabel *tagLabel = [[UILabel alloc]init];
    [tagLabel setFrame:CGRectMake(0, 0, tagSize.width, 25)];
    [tagLabel setBackgroundColor:[UIColor clearColor]];
    [tagLabel setText:tag_string];
    [tagLabel setFont:[UIFont fontWithName:@"Roboto-Light" size:12.0]];
    [tagLabel setTextAlignment:NSTextAlignmentCenter];

    [tag_bgimage addSubview:tagLabel];
    [cell addSubview:tag_bgimage];

}

2 个答案:

答案 0 :(得分:1)

您可以使用this控制器。看起来像这样:

enter image description here

答案 1 :(得分:0)

我建议使用UICollectionView来实现Tags,而不是使用附加框架。它代码少,开销少,易于实现。

请点击此链接实施:

https://codentrick.com/create-a-tag-flow-layout-with-uicollectionview/

这是它的样子。请注意它也很灵活。

enter image description here

希望这会对你有所帮助