【问题标题】:UIImageView with subview like Facebook messenger带有子视图的 UIImageView,如 Facebook messenger
【发布时间】:2016-05-14 11:39:35
【问题描述】:

我需要像 Facebook messenger 一样绘制 UIImageView(Facebook 个人资料加上 messenger 徽标)。
我需要一个带有子视图(信使徽标)的圆形 UIImageView 未剪辑。

有人有想法吗?

我的代码:

class CustomImageView : UIImageView {

    override init(frame: CGRect) {
        super.init(frame: frame)
        self.layer.cornerRadius     = frame.size.height/2
        self.layer.masksToBounds    = false
        self.clipsToBounds          = true
        self.contentMode            = UIViewContentMode.ScaleAspectFill
        self.userInteractionEnabled = true
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

let facebookProfil = CustomImageView(....)
let messengerLogo = CustomImageView(frame: CGRect(x: 0, y: 0, width: 15 , height: 15))
facebookProfil(messengerLogo)

我有这个

image result

【问题讨论】:

    标签: ios iphone swift uiimageview


    【解决方案1】:
    class CustomImageView: UIImageView {
    
      let logoImageView = UIImageView()
    
      convenience init(image: UIImage, logo: UIImage) {
        self.init(image: image)
        self.logoImageView.image = logo
        self.clipsToBounds          = true
        self.contentMode            = UIViewContentMode.ScaleAspectFill
        self.userInteractionEnabled = true
        logoImageView.clipsToBounds = true
      }
    
      override func didMoveToSuperview() {
        self.layer.cornerRadius     = frame.size.height/2
        logoImageView.frame = CGRect(origin: self.frame.origin, size: CGSize(width: 50, height: 50))
        self.superview?.addSubview(logoImageView)
      }
    }
    

    【讨论】:

    • 它不适用于自定义图像视图上的圆角半径
    猜你喜欢
    • 2015-04-22
    • 1970-01-01
    • 2019-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多