最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS中l(wèi)ebel特殊字符的自動換行問題解決

 更新時間:2017年10月23日 11:43:16   作者:七秒記憶的魚兒  
這篇文章主要給大家介紹了關于iOS中l(wèi)ebel特殊字符的實現(xiàn)不自動換行的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習iOS具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。

前言

今天在工作被一個同事問,如果在label自動換行的時候,碰到特殊的字符串時候,我不想特殊字符串換行分開,該如何實現(xiàn)???


問題圖片

說一下剛看到這個問題的時候,自己的思路:

      1.想將事件字符串轉化成一個圖片,在使用NSTextAttachment結合NSAttributedString,來將圖片顯示在label上面,但是百度下將將文字轉化成圖片,看了一下,這么長的代碼,列表上面太多的回復,考慮到性能的要求,果斷放棄了。

      2.計算回復內容的最后一個字符的frame,在去計算時間的長度,總和來判斷是否要換行,感覺還行,但是看到那么多的計算,小編也放棄了。(小編懶啊,沒辦法)

實在想不起來怎么實現(xiàn)了,不行就按照步驟2的實現(xiàn)方法試試吧,剛好這個時候,妹子來電話了,和妹子閑扯了半小時,掛斷電話,沒辦法,想吧,寫吧,終于讓我想到一個簡單的方法

最終的結果

我們可以先計算,回復內容的寬高A,再計算一次加上時間的寬高B,我們來比較A和B的高度,如果不一樣,那就是在時間這里剛好換行,我們就可以在內容和時間之間添加\n進行換行

結論

想不起來,就和妹子聊聊天,總有想起來的時候,不然多浪費青春年華!!!

Demo如下

 let label = UILabel();
 var text = "七秒記憶魚兒注,轉發(fā)請備注七秒注,么么噠!";
 label.numberOfLines = 0;
 label.font = UIFont.systemFont(ofSize: 15);
 let size = text.wj_computedTextHeight(font: 15, size: CGSize.init(width: view.bounds.width, height: CGFloat(MAXFLOAT)));
 var text1 = text;
 text.append("七秒最帥");
 let size1 = text.wj_computedTextHeight(font: 15, size: CGSize.init(width: view.bounds.width, height: CGFloat(MAXFLOAT)));
 if size.height != size1.height {
 text1.append("\n");
 text1.append("七秒最帥");
 text = text1;
 }
 label.text = text;
 label.frame = CGRect.init(x: 10, y: 64, width: size1.width, height: size1.height);
 view.addSubview(label);

抽取的方法

/// 計算文字的size
///
/// - parameter font: 大小
/// - parameter size: 文本的打下
///
/// - returns: 返回size
func wj_computedTextHeight(font:CGFloat,size:CGSize)->CGSize{
 print(self,size);
 let str = self as NSString;
 let maxSize = str.boundingRect(with: size, options:NSStringDrawingOptions.usesLineFragmentOrigin, attributes: [NSFontAttributeName:UIFont.systemFont(ofSize: font)], context: nil).size

 return maxSize;
}

最終的效果


最終的效果

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • 使用IOS AirPrint實現(xiàn)打印功能詳解

    使用IOS AirPrint實現(xiàn)打印功能詳解

    這篇文章主要介紹了使用IOS AirPrint實現(xiàn)打印功能詳解,想了解無線打印的同學,一定要看一下
    2021-04-04
  • IOS 獲取網(wǎng)絡圖片大小實例詳解

    IOS 獲取網(wǎng)絡圖片大小實例詳解

    這篇文章主要介紹了IOS 獲取網(wǎng)絡圖片大小實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06
  • iOS9蘋果將原h(huán)ttp協(xié)議改成了https協(xié)議的方法

    iOS9蘋果將原h(huán)ttp協(xié)議改成了https協(xié)議的方法

    這篇文章主要介紹了iOS9蘋果將原h(huán)ttp協(xié)議改成了https協(xié)議的方法的相關資料,需要的朋友可以參考下
    2016-01-01
  • IOS中html5上傳圖片方向問題解決方法

    IOS中html5上傳圖片方向問題解決方法

    這篇文章主要介紹了IOS中html5上傳圖片方向問題解決方法的相關資料,需要的朋友可以參考下
    2016-01-01
  • iOS tableview實現(xiàn)頂部拉伸效果

    iOS tableview實現(xiàn)頂部拉伸效果

    這篇文章主要為大家詳細介紹了iOS tableview實現(xiàn)頂部拉伸效果,以及頭部拉伸效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • iOS中5種圖片縮略技術及性能的深入探討

    iOS中5種圖片縮略技術及性能的深入探討

    縮略圖是各位iOS開發(fā)者們在日常工作中經(jīng)常會遇到的一個需求,下面這篇文章主要給大家介紹了關于iOS中5種圖片縮略技術及性能的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-06-06
  • iOS實現(xiàn)九宮格連線手勢解鎖

    iOS實現(xiàn)九宮格連線手勢解鎖

    這篇文章主要為大家詳細介紹了iOS實現(xiàn)九宮格連線手勢解鎖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • iOS優(yōu)雅的將CALayer旋轉360度示例代碼

    iOS優(yōu)雅的將CALayer旋轉360度示例代碼

    CALayer我們又稱它叫做層,CALayer類的概念與UIView非常類似,并且可以包含圖片、文本、背景色等。下面這篇文章主要給大家介紹了關于iOS如何優(yōu)雅的將CALayer旋轉360度的相關資料,文中通過示例代碼的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2018-01-01
  • iOS編程學習中關于throttle的那些事

    iOS編程學習中關于throttle的那些事

    這篇文章主要給大家介紹了關于iOS編程學習中throttle的那些事,文中通過示例代碼介紹的非常詳細,對各位iOS的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-12-12
  • iOS實現(xiàn)滑動弧形菜單的思路與方法

    iOS實現(xiàn)滑動弧形菜單的思路與方法

    這篇文章主要給大家介紹了利用iOS實現(xiàn)滑動弧形菜單的思路與方法,實現(xiàn)后的效果非常不錯,非常適合大家在開發(fā)中使用,文末給出了封裝源碼下載的地址供大家下載學習,需要的朋友可以參考,下面來一起看看吧。
    2017-05-05

最新評論

忻州市| 金堂县| 岳池县| 阳朔县| 介休市| 安国市| 肇庆市| 莱西市| 神木县| 凤翔县| 博野县| 哈尔滨市| 廉江市| 称多县| 盘山县| 青海省| 宁国市| 元氏县| 富阳市| 江山市| 灵武市| 寿光市| 朝阳县| 天全县| 盱眙县| 南昌县| 封丘县| 神农架林区| 信宜市| 连山| 开封县| 铜陵市| 屏山县| 仁化县| 泰宁县| 天柱县| 萍乡市| 临高县| 仪征市| 汤阴县| 西乡县|