iOS中Label實(shí)現(xiàn)顯示不同顏色與字體的方法
前言
iOS中Label是我們經(jīng)常遇到的一個控件,我們大家應(yīng)該都會簡單的使用它,像下面這個代碼,就能簡單的創(chuàng)建一個label
// 1、創(chuàng)建 CGRectrect =CGRectMake(100,100,100,100); UILabel* label = [[UILabelalloc]initWithFrame:rect];
引言
然而我們在開發(fā)中,經(jīng)常會遇到一行字,但是顯示不同顏色和字體的情況,話不多說,直接上代碼。
1、顯示不同顏色,有兩種方式
(1)通過 range 來設(shè)置
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"點(diǎn)擊代表您已閱讀并同意用戶規(guī)則和協(xié)議"]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:NSMakeRange(0,11)]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(11,4)]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(16,2)]; label.attributedText = str;
(2)通過文字來設(shè)置
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"點(diǎn)擊代表您已閱讀并同意用戶規(guī)則和協(xié)議"]; NSRange range1 = [[str string] rangeOfString:@"點(diǎn)擊代表您已閱讀并同意"]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:range1]; NSRange range2 = [[str string] rangeOfString:@"用戶規(guī)則"]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:range2]; NSRange range3 = [[str string] rangeOfString:@"協(xié)議"]; [str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:range3]; label.attributedText = str;
以上兩種的效果一樣,如圖:
2、顯示不同字體,也是兩種方式
(1)通過 range 來設(shè)置
[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-BoldItalicMT" size:13.0] range:NSMakeRange(0, 11)]; [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:14.0] range:NSMakeRange(11, 4)]; [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Courier-BoldOblique" size:14.0] range:NSMakeRange(16, 2)]; label.attributedText = str;
(2)通過文字來設(shè)置
NSRange range1 = [[str string] rangeOfString:@"點(diǎn)擊代表您已閱讀并同意"]; [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-BoldItalicMT" size:13.0] range:range1]; NSRange range2 = [[str string] rangeOfString:@"用戶規(guī)則"]; [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:14.0] range:range2]; NSRange range3 = [[str string] rangeOfString:@"協(xié)議"]; [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Courier-BoldOblique" size:14.0] range:range3]; label.attributedText = str;
以上兩種方式效果圖如下:
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
iOS開發(fā)中Quartz2D控制圓形縮放和實(shí)現(xiàn)刷幀效果
這篇文章主要介紹了iOS開發(fā)中Quartz2D控制圓形縮放和實(shí)現(xiàn)刷幀效果的方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-12-12iOS使用UICollectionView實(shí)現(xiàn)拖拽移動單元格
這篇文章主要為大家詳細(xì)介紹了iOS開發(fā)UICollectionView拖拽移動單元格,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04iOS實(shí)現(xiàn)抖音點(diǎn)贊動畫效果
這篇文章主要為大家詳細(xì)介紹了iOS實(shí)現(xiàn)抖音點(diǎn)贊動畫效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-01-01分析IOS RunLoop的事件循環(huán)機(jī)制
RunLoop是與線程相關(guān)的基礎(chǔ)架構(gòu)中的一部分,它是一個處理事件的循環(huán)(線程進(jìn)入這個循環(huán),運(yùn)行事件處理程序來響應(yīng)傳入的事件),RunLoop的目的是當(dāng)有事件需要處理時,線程是活躍的、忙碌的,當(dāng)沒有事件后,線程進(jìn)入休眠。2021-06-06IOS Xib控件拖拽與頁面跳轉(zhuǎn)實(shí)例
下面小編就為大家分享一篇IOS Xib控件拖拽與頁面跳轉(zhuǎn)實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01