簡體   English   中英

以編程方式設置框架CGReact x在中間位置,如centerXAnchor NSLayoutConstraint

[英]Set frame CGReact x position in middle like centerXAnchor NSLayoutConstraint programmatically

我正在創建一個簡單的應用程序,通過計算圖像frame將圖像設置為圓形。

這是我聲明的圖像變量:

lazy var imageUserDetailProfileView: UIImageView = {

    let imageView = UIImageView()


    imageView.contentMode = .scaleAspectFill
    imageView.layer.borderWidth = 1
    imageView.image = UIImage(named: "profile-icon")
    imageView.layer.borderColor = UIColor(red:0.00, green:0.50, blue:0.00, alpha:1.0).cgColor
    imageView.clipsToBounds = true

    return imageView


}()

這是我使圖像的框架寬度和高度變成圓形的

imageUserDetailProfileView.frame = CGRect(x: view.frame.midX, y: 20,width: 100, height: 100)
imageUserDetailProfileView.layer.cornerRadius = imageUserDetailProfileView.frame.height/2

現在我希望圖像應該像使用NSLayoutConstraint那樣保留在屏幕中間,該方法具有centerXAnchor方法。

如何解決這個問題呢?

let midX = view.frame.size.width / 2
let midY = view.frame.size.height / 2

嘗試此代碼。 在任何視圖的中心設置圖像的自定義方法。 只需調用方法並傳遞圖像和視圖即可。 根據用途定制。 斯威夫特4

  func setImageInCenterOfView(image:UIImage,view:UIView) {

    let imageWidth:CGFloat = 100
    let myImageView = UIImageView.init(frame: CGRect.init(x: (view.frame.size.width/2)-imageWidth/2, y: (view.frame.size.height/2)-imageWidth/2, width: imageWidth, height: imageWidth))
    myImageView.clipsToBounds = true
    myImageView.layer.cornerRadius = myImageView.frame.size.height/2
    myImageView.image = image
    view.addSubview(myImageView)
    view.layoutIfNeeded()
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM