iPhone:如何在Label上画线?

时间:2011-09-30 07:17:49

标签: iphone objective-c cocoa-touch ios4

我想让我的标签如图所示

enter image description here

我知道我可以通过在其上放置图像视图来获得此效果。

但还有其他方法吗?

如何在标签上加上线?

5 个答案:

答案 0 :(得分:2)

试试这个,

UILabel *blabel = [[UILabel alloc] initWithFrame:CGRectMake(XX, 6, 271, 26)];
blabel.text = @"Hellooooooo";
blabel.textAlignment = UITextAlignmentCenter;
blabel.backgroundColor = [UIColor clearColor];
blabel.textColor = [UIColor blackColor];
blabel.font = [UIFont systemFontOfSize:14];
[scrollDemo addSubview:blabel];

//underline code
CGSize expectedLabelSize = [@"Hellooooooo" sizeWithFont:blabel.font constrainedToSize:blabel.frame.size lineBreakMode:UILineBreakModeWordWrap];

UIView *viewUnderline=[[UIView alloc] init];
viewUnderline.frame=CGRectMake((blabel.frame.size.width - expectedLabelSize.width)/2,    expectedLabelSize.height + (blabel.frame.size.height - expectedLabelSize.height)/2,   expectedLabelSize.width, 1);
viewUnderline.backgroundColor=[UIColor blackColor];
[scrollDemo addSubview:viewUnderline];
[viewUnderline release]; 

上面的行将显示在文字下方。你只需要为UIView改变Y,它就会有奇迹:)

答案 1 :(得分:0)

在您的标签上放置一个带有线条图像的UIImageView,这样当您运行应用程序时,它就适合。

答案 2 :(得分:0)

将另一个带有“ _ ”的标签放在上面 透明的背景。

答案 3 :(得分:0)

您可以使用线条的高度和宽度创建UIView,并为其指定背景颜色。把UIView放在你的UILabel上。

答案 4 :(得分:0)

对于我的一个项目,我创建了一个 UILabel 子类,它支持多行文字下划线删除线,下划线/删除线偏移,不同的文字对齐和不同的字体大小

请参阅提供的链接以获取更多信息和用法示例。

https://github.com/GuntisTreulands/UnderLineLabel