contentInset 只取负数
contentInset take only negative number
我正在尝试垂直对齐视图中的文本。
为此,我调用了 contentInset 函数,如下所示:
override func alignCenterVertical() {
let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)
let size = sizeThatFits(fittingSize)
let topOffset = (bounds.size.height - size.height * zoomScale) / 2
let positiveTopOffset = max(1, topOffset)
contentInset = UIEdgeInsets(top: positiveTopOffset, left: 0, bottom: 0, right: 0)
}
但这仅在“positiveTopOffset”值为负时有效。 (反转我想要的)
我想要的正是这种行为,但“positiveTopOffset”为正,就像这里的这部分代码一样。
当我使用这样的代码时,“positiveTopOffset”为正,没有附加内容。为什么?
非常感谢!
终于找到问题了
我必须添加 isScrollingEnable = true
,像这样:
override func alignCenterVertical() {
let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)
isScrollingEnabled = true
let size = sizeThatFits(fittingSize)
let topOffset = (bounds.size.height - size.height * zoomScale) / 2
let positiveTopOffset = max(1, topOffset)
contentInset = UIEdgeInsets(top: positiveTopOffset, left: 0, bottom: 0, right: 0)
}
我正在尝试垂直对齐视图中的文本。 为此,我调用了 contentInset 函数,如下所示:
override func alignCenterVertical() {
let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)
let size = sizeThatFits(fittingSize)
let topOffset = (bounds.size.height - size.height * zoomScale) / 2
let positiveTopOffset = max(1, topOffset)
contentInset = UIEdgeInsets(top: positiveTopOffset, left: 0, bottom: 0, right: 0)
}
但这仅在“positiveTopOffset”值为负时有效。 (反转我想要的)
我想要的正是这种行为,但“positiveTopOffset”为正,就像这里的这部分代码一样。
当我使用这样的代码时,“positiveTopOffset”为正,没有附加内容。为什么?
非常感谢!
终于找到问题了
我必须添加 isScrollingEnable = true
,像这样:
override func alignCenterVertical() {
let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)
isScrollingEnabled = true
let size = sizeThatFits(fittingSize)
let topOffset = (bounds.size.height - size.height * zoomScale) / 2
let positiveTopOffset = max(1, topOffset)
contentInset = UIEdgeInsets(top: positiveTopOffset, left: 0, bottom: 0, right: 0)
}