是否可以在Swift中的UIButton中添加两个标签?
问题描述:
我在我的Swift
项目上有一个UIButton
,我想使用一个字体超赞的图标和里面的文本。是否可以在Swift中的UIButton中添加两个标签?
我知道我可以为按钮设置一个标题,但是,至于我需要的图标和文本将采用不同的文本大小,我无法将它们组合在同一个标题标记中。我也想过使用一个图像(设置字体真棒图标)与一个归因的标题,但我不能改变字体真棒图标的颜色。
我知道我可以在UIView
内添加两个标签,但我想知道是否有可能在UIButton
上得到这个。
在此先感谢!
答
您可以设置属性字符串像您的按钮的归属标题,
let attributedTitle = NSAttributedString(string: "Click Here",
attributes: [NSForegroundColorAttributeName : UIColor.blueColor()])
button.setAttributedTitle(attributedTitle, forState: .Normal)
您可以设置多种颜色,字体,大小特定文本或字符串的一部分。
另一个例子,
attributedTitle = NSMutableAttributedString(string: @"Click Here", attributes: [NSFontAttributeName:UIFont(name: "Georgia", size: 18.0)!])
attributedTitle.addAttribute(NSForegroundColorAttributeName, value: UIColor.redColor(), range: NSRange(location:2,length:4))
button.setAttributedTitle(attributedTitle, forState: .Normal)
所以,你可以通过使用NSRange
指定位置,并可以设定指定范围不同的颜色和字体属性!
+0
非常感谢!这是我正在寻找的。 –
+0
不客气... :) – Lion
你有尝试'setAttributedTitle'属性的字符串? – Lion
@KetanParmar你是什么意思与归因字符串? –
'NSAttributedString'在一个字符串中可以有不同的大小/文本/字体/颜色,请尝试搜索如何创建它 – Tj3n