【问题】
之前的代码是:
//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,即可使得当文字太长,优先显示前面和最后面的内容,而让中间内容显示省略号三个点
-》对于文件名来说,就是保证文件名后缀显示了。