標籤:
NSMutableAttributedString 部分屬性介紹
/** NSFontAttributeName --- 設定字型大小 */
/** NSForegroundColorAttributeName --- 設定字型顏色 */
/** NSParagraphStyleAttributeName --- 設定段落格式 (暫無明顯變化) */
/** NSBackgroundColorAttributeName --- 設定字型的背景顏色 */
/** NSLigatureAttributeName --- 設定連體屬性 (暫無明顯變化)*/
/** NSKernAttributeName --- 設定字元間的間距,整數加大,負數減小*/
/** NSStrikethroughStyleAttributeName --- 設定刪除線*/
/** NSStrikethroughColorAttributeName --- 設定刪除線的顏色 */
/** NSUnderlineStyleAttributeName --- 設定底線 */
/** NSUnderlineColorAttributeName --- 設定底線的顏色 */
/** NSStrokeWidthAttributeName --- 設定筆畫寬度,取值為 NSNumber 對象(整數),負值填充效果,正值中空效果 */
/** NSStrokeColorAttributeName --- 填充部分顏色,不是字型顏色,取值為 UIColor 對象 */
/** NSShadowAttributeName --- 設定字型的陰影,取值為 NSShadow 對象 */
NSString *str = @"哈哈哈,嘿嘿,啊哦,https://www.baidu.com,吼吼吼吼,嗯嗯嗯嗯,gakjfklj"; NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc]initWithString:str]; /** NSFontAttributeName --- 設定字型大小 */ [attributeStr addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:20] range:NSMakeRange(0, 3)]; /** NSForegroundColorAttributeName --- 設定字型顏色 */ [attributeStr addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0, 3)]; [attributeStr addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(10, 21)]; /** NSParagraphStyleAttributeName --- 設定段落格式 (暫無明顯變化) */ NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc]init]; style.headIndent = 16; [attributeStr addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, attributeStr.length)]; /** NSBackgroundColorAttributeName --- 設定字型的背景顏色 */ [attributeStr addAttribute:NSBackgroundColorAttributeName value:[UIColor cyanColor] range:NSMakeRange(4, 2)]; /** NSLigatureAttributeName --- 設定連體屬性 (暫無明顯變化)*/ [attributeStr addAttribute:NSLigatureAttributeName value:[NSNumber numberWithInteger:1] range:NSMakeRange(7, 2)]; /** NSKernAttributeName --- 設定字元間的間距,整數加大,負數減小*/ [attributeStr addAttribute:NSKernAttributeName value:[NSNumber numberWithInteger:0] range:NSMakeRange(7, 1)];// [attributeStr addAttribute:NSKernAttributeName value:[NSNumber numberWithInteger:-10] range:NSMakeRange(7, 1)]; /** NSStrikethroughStyleAttributeName --- 設定刪除線*/ [attributeStr addAttribute:NSStrikethroughStyleAttributeName value:[NSNumber numberWithInteger:1] range:NSMakeRange(attributeStr.length - 8, 8)]; /** NSStrikethroughColorAttributeName --- 設定刪除線的顏色 */ [attributeStr addAttribute:NSStrikethroughColorAttributeName value:[UIColor redColor] range:NSMakeRange(attributeStr.length - 8, 8)]; /** NSUnderlineStyleAttributeName --- 設定底線 */ [attributeStr addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:NSMakeRange(10, 21)]; [attributeStr addAttribute:NSLinkAttributeName value:[NSURL URLWithString:@"https://www.baidu.com/index.php?tn=monline_3_dg"] range:NSMakeRange(10, 21)]; /** NSUnderlineColorAttributeName --- 設定底線的顏色 */ [attributeStr addAttribute:NSUnderlineColorAttributeName value:[UIColor redColor] range:NSMakeRange(10, 21)]; /** NSStrokeWidthAttributeName --- 設定筆畫寬度,取值為 NSNumber 對象(整數),負值填充效果,正值中空效果 */ [attributeStr addAttribute:NSStrokeWidthAttributeName value:[NSNumber numberWithInteger:1] range:NSMakeRange(32, 4)]; /** NSStrokeColorAttributeName --- 填充部分顏色,不是字型顏色,取值為 UIColor 對象 */ [attributeStr addAttribute:NSStrokeColorAttributeName value:[UIColor magentaColor] range:NSMakeRange(32, 4)]; /** NSShadowAttributeName --- 設定字型的陰影,取值為 NSShadow 對象 */ NSShadow *shadow = [[NSShadow alloc]init]; shadow.shadowColor = [UIColor orangeColor]; shadow.shadowOffset = CGSizeMake(-2, -2); shadow.shadowBlurRadius = 2; [attributeStr addAttribute:NSShadowAttributeName value:shadow range:NSMakeRange(37, 4)]; self.richLabel.attributedText = attributeStr;
View Code
iOS NSMutableAttributedString 簡單使用