Ios 添加到主视图的子视图的尾随约束未固定
我有一个指向superview的前导和尾随约束常量=20的视图。我正在尝试向该视图添加渐变层,但它只绘制560的宽度,这是故事板中的宽度(大小类活动) 看起来尾随约束没有坚持,因为视图框的大小是768,而iPad应该是768。我也没有自动布局错误,当我将背景颜色设置为除“清晰”之外的其他颜色时,它看起来很好,但渐变仍然没有完全绘制出来 有什么想法吗Ios 添加到主视图的子视图的尾随约束未固定,ios,autolayout,gradient,Ios,Autolayout,Gradient,我有一个指向superview的前导和尾随约束常量=20的视图。我正在尝试向该视图添加渐变层,但它只绘制560的宽度,这是故事板中的宽度(大小类活动) 看起来尾随约束没有坚持,因为视图框的大小是768,而iPad应该是768。我也没有自动布局错误,当我将背景颜色设置为除“清晰”之外的其他颜色时,它看起来很好,但渐变仍然没有完全绘制出来 有什么想法吗 func setupGradient(view: UIView) { let colorArray = [UIColor.blackColo
func setupGradient(view: UIView) {
let colorArray = [UIColor.blackColor().CGColor, UIColor.whiteColor().CGColor]
let gradient: CAGradientLayer = CAGradientLayer()
gradient.frame = view.bounds
print(gradient.frame)
print(self.view.bounds)
gradient.startPoint = CGPoint(x: 0, y: 0.5)
gradient.endPoint = CGPoint(x: 1.0, y: 0.5)
gradient.colors = colorArray
view.layer.addSublayer(gradient)
}
从打印报表:
(0.0, 0.0, 560.0, 70.0)
(0.0,0.0768.0,1024.0)
自动布局和自动调整遮罩在
ui视图上工作
而不是在CALayers上工作
设置层框架后,autolayout可以更改视图框架,但不能更改层框架
我们需要手动更改层框架
- (void) viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
gradientLayer.frame = gradientView.bounds;
}
自动布局和自动调整遮罩在
UIViews
上工作,而不是在CALayers
上工作
设置层框架后,autolayout可以更改视图框架,但不能更改层框架
我们需要手动更改层框架
- (void) viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
gradientLayer.frame = gradientView.bounds;
}