色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機編程>

NSAttributedString解析

大小:0.2 MB 人氣: 2017-09-26 需要積分:1

  一、常用需求封裝

  需求:在我們?nèi)粘i_發(fā)中,某些句子中會有改變某些字顏色的需求,當(dāng)然顏色一般而言就是為了著重強調(diào),常為同一種顏色,所以下面代碼是單純改變一句話中的某些字的顏色(一種顏色)

  /**

  * 單純改變一句話中的某些字的顏色(一種顏色)

  *

  * @param color 需要改變成的顏色

  * @param totalStr 總的字符串

  * @param subArray 需要改變顏色的文字?jǐn)?shù)組(要是有相同的 只取第一個)

  *

  * @return 生成的富文本

  */

  + (NSMutableAttributedString *)ls_changeCorlorWithColor:(UIColor *)color TotalString:(NSString *)totalStr SubStringArray:(NSArray *)subArray {

  NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:totalStr];

  for (NSString *rangeStr in subArray) {

  NSRange range = [totalStr rangeOfString:rangeStr options:NSBackwardsSearch];

 ?。踑ttributedStr addAttribute:NSForegroundColorAttributeName value:color range:range];

  }

  return attributedStr;

  }

  需求:需要更改字間距來適應(yīng)整體UI

  /**

  * 單純改變句子的字間距(需要 《CoreText/CoreText.h》)

  *

  * @param totalString 需要更改的字符串

  * @param space 字間距

  *

  * @return 生成的富文本

  */

  + (NSMutableAttributedString *)ls_changeSpaceWithTotalString:(NSString *)totalString Space:(CGFloat)space {

  NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:totalString];

  long number = space;

  CFNumberRef num = CFNumberCreate(kCFAllocatorDefault,kCFNumberSInt8Type,&number);

 ?。踑ttributedStr addAttribute:(id)kCTKernAttributeName value:(__bridge id)num range:NSMakeRange(0,[attributedStr length])];

  CFRelease(num);

  return attributedStr;

  }

  需求:需要改變行間距來適應(yīng)整體UI

  /**

  * 單純改變段落的行間距

  *

  * @param totalString 需要更改的字符串

  * @param lineSpace 行間距

  *

  * @return 生成的富文本

  */

  + (NSMutableAttributedString *)ls_changeLineSpaceWithTotalString:(NSString *)totalString LineSpace:(CGFloat)lineSpace {

  NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:totalString];

  NSMutableParagraphStyle * paragraphStyle = [[NSMutableParagraphStyle alloc] init];

 ?。踦aragraphStyle setLineSpacing:lineSpace];

 ?。踑ttributedStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [totalString length])];

  return attributedStr;

  }

  需求:同時更改行間距和字間距

  /**

  * 同時更改行間距和字間距

  *

  * @param totalString 需要改變的字符串

  * @param lineSpace 行間距

  * @param textSpace 字間距

  *

  * @return 生成的富文本

  */

  + (NSMutableAttributedString *)ls_changeLineAndTextSpaceWithTotalString:(NSString *)totalString LineSpace:(CGFloat)lineSpace textSpace:(CGFloat)textSpace {

  NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:totalString];

  NSMutableParagraphStyle * paragraphStyle = [[NSMutableParagraphStyle alloc] init];

  [paragraphStyle setLineSpacing:lineSpace];

  [attributedStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [totalString length])];

  long number = textSpace;

  CFNumberRef num = CFNumberCreate(kCFAllocatorDefault,kCFNumberSInt8Type,&number);

  [attributedStr addAttribute:(id)kCTKernAttributeName value:(__bridge id)num range:NSMakeRange(0,[attributedStr length])];

  CFRelease(num);

  return attributedStr;

  }

  需求:更改某些文字的顏色并修改其字體,突出重點強調(diào)

  /**

  * 改變某些文字的顏色 并單獨設(shè)置其字體

  *

  * @param font 設(shè)置的字體

  * @param color 顏色

  * @param totalString 總的字符串

  * @param subArray 想要變色的字符數(shù)組

  *

  * @return 生成的富文本

  */

  + (NSMutableAttributedString *)ls_changeFontAndColor:(UIFont *)font Color:(UIColor *)color TotalString:(NSString *)totalString SubStringArray:(NSArray *)subArray {

  NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:totalString];

  for (NSString *rangeStr in subArray) {

  NSRange range = [totalString rangeOfString:rangeStr options:NSBackwardsSearch];

 ?。踑ttributedStr addAttribute:NSForegroundColorAttributeName value:color range:range];

  [attributedStr addAttribute:NSFontAttributeName value:font range:range];

  }

  return attributedStr;

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?
      主站蜘蛛池模板: 暖暖 视频 免费 高清 在线观看| 99热久久久无码国产精品性麻豆| 亚洲精品中文字幕无码A片蜜桃| 影音先锋电影资源av| 97人妻中文字幕免费视频 | 亚洲中久无码永久在线| 白白操在线视频| 久久人妻少妇嫩草AV蜜桃99| 特污兔午夜影视院| 99热久久爱五月天婷婷| 精品国产国偷自产在线观看| 三级网址在线观看| gv手机在线观看| 久久这里只有精品视频e| 亚洲成人精品久久| 光溜溜的美女直播软件| 欧美大片免费观看| 2018国产天天弄谢| 寂寞夜晚视频高清观看免费| 网友自拍成人在线视频 | 日日摸夜夜嗷嗷叫日日拍| 在线精品视频成人网| 国精产品一区一区三区有| 三级网站视频| 超碰caoporon最新视频| 欧美xxxx印度| 99久久99久久精品| 李亚男三级| 中国明星16xxxxhd| 久久理论片| 伊人精品在线| 久久国产乱子伦精品免费不卡| 亚洲国产成人精品不卡青青草原| 国产精品2020观看久久| 少妇两个奶头喷出奶水了怎么办| 暗卫受被肉到失禁各种PLAY| 欧美牲交A欧美牲交| oldgrand欧洲老妇人| 欧美特级另类xxx| rio 快播| 色欲AV精品人妻一区二区麻豆|