我有一个UILabel,我正在这样设置:

class someSuperclass {

    var firstLetterLabel = UILabel(frame: CGRect(x: 58, y: 0, width: 81, height: 120))

    func commonInit() {
        firstLetterLabel.font = UIFont(name: "MuseoSans-500", size: 110.0)
        firstLetterLabel.textColor = UIColor.museumRed
        firstLetterLabel.textAlignment = .center
        firstLetterLabel.numberOfLines = 1
        firstLetterLabel.lineBreakMode = .byClipping
        firstLetterLabel.clipsToBounds = false
        addSubview(firstLetterLabel)
    }
}

但是它仍然受到其边界ios - UILabel上的clipsToBounds无法正常工作-LMLPHP的限制

由于clipsToBounds似乎不适用于标签的内容。 如何阻止标签内容被其边框/边界剪裁?

最佳答案

ClipsToBounds允许子视图或子层从视图中溢出或防止溢出,但对于视图的绘制内容不这样做,在这种情况下为UILabel。您不能越过视图/标签的边界。这就是为什么它被裁剪。这种差异总是会剪切绘制的内容。

可能的解决方案
1)让单字母标签的内在大小防止其被剪切。将所有标签放置在水平堆叠视图中。

2)在标签上启用最小字体比例以使其适合。

3)最后,它似乎不在图形的中心。不太确定为什么会给您很少的关注。

10-07 21:29