【已解決】swift中UILabel中顯示文件名長度太長時保證后綴可以顯示

DelorasEIOK 8年前發布 | 6K 次閱讀 Swift Swing Java開發

問題

之前的代碼是:

//2. file name label
        self.nameLabel.text = resMsg.fileItem.name
        self.nameLabel.font = UIFont.systemFontOfSize(13)
        self.nameLabel.textColor = ColorConversationText
        self.nameLabel.textAlignment = NSTextAlignment.Left
        self.nameLabel.lineBreakMode = NSLineBreakMode.ByCharWrapping
        self.nameLabel.numberOfLines = 0
        //self.fileView.addSubview(self.nameLabel)
        self.addSubview(self.nameLabel)
        constrain(nameLabel, iconImageView) { nameLabel, iconImageView in
            nameLabel.top == nameLabel.superview!.top + 6
            nameLabel.left == iconImageView.right + 10
            nameLabel.right <= nameLabel.superview!.right - 8
            nameLabel.bottom <= nameLabel.superview!.bottom - 20
        }

效果是:

希望達到的效果是:

文件名太長時,保持文件名的開始后最后的后綴顯示,中間部分可以變成…

無意間發現,直接修改參數即可:

現在改為:

//self.nameLabel.lineBreakMode = NSLineBreakMode.ByCharWrapping
        self.nameLabel.lineBreakMode = NSLineBreakMode.ByTruncatingMiddle

效果是:

總結

對于UILabel的的話,設置lineBreakMode為NSLineBreakMode.ByTruncatingMiddle,即可使得當文字太長,優先顯示前面和最后面的內容,而讓中間內容顯示省略號三個點

-》對于文件名來說,就是保證文件名后綴顯示了。

 

來自: http://www.crifan.com/swift_uilabel_filename_too_long_show_suffix/

 

 本文由用戶 DelorasEIOK 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!