Ios 设置UILabel的一部分';s文本为粗体,另一部分为斜体

Ios 设置UILabel的一部分';s文本为粗体,另一部分为斜体,ios,cocoa-touch,uilabel,text-styling,Ios,Cocoa Touch,Uilabel,Text Styling,有没有办法将ui标签的一部分设置为粗体,另一部分设置为斜体 如 敏捷的棕色狐狸跳过懒狗 似乎我无法使用来实现这一点。您可以使用NSMutableAttributedString来实现这一点 NSMutableAttributedString *strText = [[NSMutableAttributedString alloc] initWithString:@"Setting different for label text"]; [strText addAttribute:NSFontAt

有没有办法将
ui标签的一部分设置为粗体,另一部分设置为斜体

敏捷的棕色狐狸跳过懒狗


似乎我无法使用来实现这一点。您可以使用NSMutableAttributedString来实现这一点

NSMutableAttributedString *strText = [[NSMutableAttributedString alloc] initWithString:@"Setting different for label text"];
[strText addAttribute:NSFontAttributeName
              value:[UIFont fontWithName:@"Helvetica-Bold" size:22]
              range:NSMakeRange(0, 10)];
[strText addAttribute:NSFontAttributeName
              value:[UIFont fontWithName:@"Helvetica-Italic" size:22]
              range:NSMakeRange(10, 10)];
Swift 4代码:

var strText = NSMutableAttributedString(string: "Setting different for label text")
strText.addAttribute(.font, value: UIFont(name: "Helvetica-Bold", size: 22)!, range: NSRange(location: 0, length: 10))
strText.addAttribute(.font, value: UIFont(name: "Helvetica-Italic", size: 22)!, range: NSRange(location: 10, length: 10))

从iOS 6开始,您可以将
UILabel.attributedText
设置为
NSAttributedString

var customString = NSMutableAttributedString(string: "my String");

customString.addAttribute(NSFontAttributeName, value: UIFont.systemFontOfSize(15), range: NSRange(1...3))

var label  = UILabel();
label.attributedText = customString;

尝试使用属性字符串。是否真的使用!?没有有效的方法来做到这一点?范围如果我有一个字符串,其中有html标记?我必须构建一个方法来实现这一点?