我正在使用NewsAPI来获取新闻,并让它在图像视图显示当前新闻的图像的情况下工作。我希望能够将图像视图的宽度设置为与图像的宽度相等,但图像不断变化,因为它是实时新闻提要。有人知道我会怎么做吗?
发布于 2018-01-23 16:21:30
所以这就是我想出来的:
假设您希望在标签大小改变时改变模糊效果。(模糊效果是标签的超级视图)
view.addSubview(progressTextVisualEffectView)
NSLayoutConstraint.activate([
progressTextVisualEffectView.topAnchor.constraint(equalTo: iosImage.topAnchor, constant: 20),
progressTextVisualEffectView.leftAnchor.constraint(equalTo: iosImage.leftAnchor, constant: 20),
progressTextVisualEffectView.heightAnchor.constraint(equalToConstant: 36),
])
progressTextVisualEffectView.autoresizesSubviews = true
progressTextVisualEffectView.contentView.addSubview(progressLabel)
NSLayoutConstraint.activate([
progressLabel.centerXAnchor.constraint(equalTo: progressTextVisualEffectView.centerXAnchor),
progressLabel.centerYAnchor.constraint(equalTo: progressTextVisualEffectView.centerYAnchor),
progressLabel.rightAnchor.constraint(equalTo: progressTextVisualEffectView.rightAnchor, constant: -10),
progressLabel.leftAnchor.constraint(equalTo: progressTextVisualEffectView.leftAnchor, constant: 10)
])
}
let progressLabel: UILabel = {
let label = UILabel()
label.translatesAutoresizingMaskIntoConstraints = false
label.text = "1 / 111112"
label.textColor = UIColor(white: 1, alpha: 0.7)
label.font = UIFont.systemFont(ofSize: 15, weight: .semibold)
label.sizeToFit()
return label
}()
let progressTextVisualEffectView: UIVisualEffectView = {
let blurEffect = UIBlurEffect(style: .dark)
let blur = UIVisualEffectView(effect: blurEffect)
blur.layer.cornerRadius = 12
blur.clipsToBounds = true
blur.translatesAutoresizingMaskIntoConstraints = false
blur.sizeToFit()
return blur
}()
最重要的是,
progressTextVisualEffectView.autoresizesSubviews = true
这是我第一次回答这个问题,所以如果你仍然不知道怎么做,你可以问我。
https://stackoverflow.com/questions/38837359
复制相似问题