我有一个UIImage视图,然后有一个叠加层,然后是另一个UIImage视图。我需要顶部的UIImageView根本不透明。我不想看到任何背景图片。
我尝试设置Alpha,尝试与Kingfisher一起使用Blend Processer,尝试将png转换为jpg,尝试将一个子视图移到另一个视图,并尝试更改图像的背景颜色,当我阅读其他内容时,我尝试将顶部图片设置为不透明而不是不透明,所以我尝试了很多。
clientProfileImg.borderWidth = 2.0
clientProfileImg.borderColor = UIColor.white
clientProfileImg.isUserInteractionEnabled = false
clientBackgroundProfileImg.isUserInteractionEnabled = false
view.bringSubview(toFront: clientProfileImg)
view.sendSubview(toBack: clientBackgroundProfileImg)
clientProfileImg.backgroundColor = UIColor.black
clientProfileImg.alpha = 1.0
guard let profilePic = client?.profilePhoto else { print("No profile pic"); return }
let resource = ImageResource(downloadURL: URL(string: profilePic)!, cacheKey: profilePic)
// Blend (iOS)
// let processor = BlendImageProcessor(blendMode: .sourceAtop, alpha: 1.0, backgroundColor: .black)
// Set the image to Kingfisher which caches it
DispatchQueue.main.async {
self.clientProfileImg.kf.setImage(with: resource, placeholder: #imageLiteral(resourceName: "user-gray"), options: [.forceRefresh, .cacheSerializer(FormatIndicatedCacheSerializer.jpeg)])
self.clientBackgroundProfileImg.kf.setImage(with: resource, options: [.forceRefresh,
.cacheSerializer(FormatIndicatedCacheSerializer.jpeg)]
}
这是我看到的:
这就是我想要的:
答案 0 :(得分:0)
尝试使用该方法
三个渲染模式值。
{{1}}
答案 1 :(得分:0)
我解决了这个问题,实际上在情节提要中它们之间有一个叠加图像。删除它并在运行时以编程方式添加它可以解决此问题