[英]Issues with 'View as' in Interface Builder
當我嘗試在界面生成器中使用“查看方式”選項時,我目前遇到問題。
例如,當為iPhone 8 Plus選擇“視圖為”時,所有視圖約束都會更新,以便在界面構建器中的iPhone 8 Plus上看起來很好,但是UITableViewCells的子視圖不會在界面構建器中更新。 可以在下面的屏幕截圖中看到。
以iPhone 8 Plus觀看,已從以iPhone X觀看切換
以iPhone X觀看,已從以iPhone 8 Plus觀看
通常,這不會真的困擾我,因為它會構建並更新所有約束,但是當我構建應用程序時,由於某種原因,我在UITableViewCell的主子視圖上設置的CAGradientLayer不會更新為這些約束,並保持以前的“查看方式”選項的約束。
我試圖覆蓋layoutSublayers(of: CALayer)
,然后更新layoutSublayers(of: CALayer)
的寬度以更新UIView的新寬度,但這不起作用,因為UIView的框架未更新以反映更新的約束。
有什么辦法可以應用約束來獲取UIView的寬度? 還是有我可以在Xcode中應用的修復程序來解決此問題。
非常感謝,
-威廉
更新layoutSubviews
內部漸變的框架
override func layoutSubviews()
super.layoutSubviews()
// set the frame of the gradient here
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.