成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

怎么在iOS中使用NSMutableAttributedString實現(xiàn)富文本

今天就跟大家聊聊有關(guān)怎么在iOS中使用NSMutableAttributedString實現(xiàn)富文本,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

成都創(chuàng)新互聯(lián)公司是專業(yè)的伊春網(wǎng)站建設公司,伊春接單;提供做網(wǎng)站、成都做網(wǎng)站,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行伊春網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

NSAttributedString

NSAttributedString對象管理適用于字符串中單個字符或字符范圍的字符串和關(guān)聯(lián)的屬性集(例如字體和字距)。NSAttributedString對象的默認字體是Helvetica 12點,可能與平臺的默認系統(tǒng)字體不同。因此,您可能希望創(chuàng)建適用于您的應用程序的非默認屬性的新字符串。您還可以使用NSParagraphStyle類及其子類NSMutableParagraphStyle來封裝NSAttributedString類使用的段落或標尺屬性。

實例化方法和使用方法

實例化方法

使用字符串初始化

- (instancetype)initWithString:(NSString *)str;

代碼示例

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"測試數(shù)據(jù)"];

字典中存放一些屬性名和屬性值

- (instancetype)initWithString:(NSString *)str attributes:(NSDictionary<NSString *,id> *)attrs;

代碼示例

NSDictionary *attributedDict = @{
          NSFontAttributeName:[UIFont systemFontOfSize:16.0],
          NSForegroundColorAttributeName:[UIColor redColor],
          NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick)
          };
 NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"測試數(shù)據(jù)" attributes:attributedDict];

使用NSAttributedString初始化,與NSMutableString,NSString類似

- (instancetype)initWithAttributedString:(NSAttributedString *)attrStr;

使用方法

為某一范圍內(nèi)的文字設置多個屬性的方法

- (void)setAttributes:(NSDictionary<NSString *,id> *)attrs range:(NSRange)range;

//代碼示例

NSString *string = @"測試數(shù)據(jù)";
NSDictionary *attributedDict = @{
          NSFontAttributeName:[UIFont systemFontOfSize:16.0],
          NSForegroundColorAttributeName:[UIColor redColor],
          NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick)
          };
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:string];
 
[attributedString setAttributes:attributedDict range:NSMakeRange(0, string.length)];

為某一范圍內(nèi)的文字添加某個屬性的方法

- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;

//代碼示例

NSString *string = @"測試數(shù)據(jù)";
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:string];
 
[attributedString addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, string.length)];

為某一范圍內(nèi)的文字添加多個屬性的方法

- (void)addAttributes:(NSDictionary<NSString *,id> *)attrs range:(NSRange)range;

//代碼示例

NSString *string = @"測試數(shù)據(jù)";
NSDictionary *attributedDict = @{
          NSFontAttributeName:[UIFont systemFontOfSize:16.0],
          NSForegroundColorAttributeName:[UIColor redColor],
          NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick)
          };
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:string];
 
[attributedString addAttributes:attributedDict range:NSMakeRange(0, string.length)];

移除某個范圍內(nèi)的某個屬性的方法

- (void)removeAttribute:(NSString *)name range:(NSRange)range;

//代碼示例

 NSString *string = @"測試數(shù)據(jù)";
 NSDictionary *attributedDict = @{
          NSFontAttributeName:[UIFont systemFontOfSize:16.0],
          NSForegroundColorAttributeName:[UIColor redColor],
          NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick)
          };
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:string];
 
[attributedString addAttributes:attributedDict range:NSMakeRange(0, string.length)];
 
 
[attributedString removeAttribute:NSForegroundColorAttributeName range:NSMakeRange(0, string.length)];

屬性及說明

key說明
NSFontAttributeName字體,value是UIFont對象
NSParagraphStyleAttributeName繪圖的風格(居中,換行模式,間距等諸多風格),value是NSParagraphStyle對象
NSForegroundColorAttributeName文字顏色,value是UIFont對象
NSLigatureAttributeName字符連體,value是NSNumber
NSKernAttributeName字符間隔
NSStrikethroughStyleAttributeName刪除線,value是NSNumber
NSUnderlineStyleAttributeName下劃線,value是NSNumber
NSStrokeColorAttributeName描繪邊顏色,value是UIColor
NSStrokeWidthAttributeName描邊寬度,value是NSNumber
NSShadowAttributeName陰影,value是NSShadow對象
NSTextEffectAttributeName文字效果,value是NSString
NSAttachmentAttributeName附屬,value是NSTextAttachment 對象
NSLinkAttributeName鏈接,value是NSURL or NSString
NSBaselineOffsetAttributeName基礎(chǔ)偏移量,value是NSNumber對象
NSStrikethroughColorAttributeName刪除線顏色,value是UIColor
NSObliquenessAttributeName字體傾斜
NSExpansionAttributeName字體扁平化
NSVerticalGlyphFormAttributeName垂直或者水平,value是 NSNumber,0表示水平,1垂直

富文本段落排版格式屬性說明

屬性說明
lineSpacing字體的行間距
firstLineHeadIndent首行縮進
alignment(兩端對齊的)文本對齊方式:(左,中,右,兩端對齊,自然)
lineBreakMode結(jié)尾部分的內(nèi)容以……方式省略 ( "...wxyz" ,"abcd..." ,"ab...yz")
headIndent整體縮進(首行除外)
minimumLineHeight最低行高
maximumLineHeight最大行高
paragraphSpacing段與段之間的間距
paragraphSpacingBefore段首行空白空間
baseWritingDirection書寫方向(一共三種)
hyphenationFactor連字屬性 在iOS,唯一支持的值分別為0和1

看完上述內(nèi)容,你們對怎么在iOS中使用NSMutableAttributedString實現(xiàn)富文本有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

分享名稱:怎么在iOS中使用NSMutableAttributedString實現(xiàn)富文本
網(wǎng)頁路徑:http://jinyejixie.com/article6/ijjhog.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供服務器托管網(wǎng)站策劃、動態(tài)網(wǎng)站、App開發(fā)、網(wǎng)站設計公司、標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
肥城市| 高雄县| 台州市| 塔河县| 梅河口市| 德安县| 循化| 银川市| 庆安县| 南阳市| 东宁县| 杭州市| 涿鹿县| 台东市| 盐津县| 渝中区| 镇远县| 雷波县| 余干县| 东乡| 中西区| 阿拉善盟| 河津市| 馆陶县| 临湘市| 崇礼县| 芒康县| 静乐县| 邻水| 泗洪县| 搜索| 五华县| 通江县| 博客| 林西县| 姚安县| 肇州县| 叙永县| 绥滨县| 海丰县| 虞城县|