我有一個CGImage我想在CALayer. 將內容和重力設定到左下角可以正常作業。
layer.contents = cgimage
layer.contentsGravity = .bottomLeft

現在我想要居中并覆寫整個圖層。使用.center只是將內容中心移動到左下角。
layer.contents = cgimage
layer.contentsGravity = .center

只有當我將位置設定為視圖的中心時,它才會按預期顯示。
layer.contents = cgimage
layer.contentsGravity = .center
layer.position = CGPoint(x: view.frame.width/2, y: view.frame.height/2)

但是將重力設定為 resize-aspect-fill 時根本沒有顯示任何內容 - 無論是否設定了位置。
layer.contents = cgimage
layer.contentsGravity = .resizeAspectFill
我有一種感覺,我錯過了一些基本的東西。
為什么不CGImage覆寫CALayer全尺寸并保持縱橫比?
uj5u.com熱心網友回復:
我可以顯示影像填充。我認為您的視圖不在父視圖的中心。
let view = UIView.init(frame: self.view.bounds)
self.view.addSubview(view)
view.layer.contents = UIImage.init(named:"ic_control_group_unselect_on")?.cgImage
view.layer.contentsGravity = .resize
uj5u.com熱心網友回復:
結果是 acontentGravity的型別.resize,并且a.resizeAspectFill的框架CALayer必須明確設定。對于一個.center或.bottomLeft你可以逃脫沒有。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/419028.html
標籤:
