我想我想要做的事情很简单,但我似乎无法弄明白.我知道如何使用UIImageView在UIImage上应用渐变,但这不是我想要的.我想要做的是,在保持图像边界的同时,淡出UIImage的上半部分,使其完全透明.我希望能够看到UIImage背后的视图,图像的下半部分仍然完全可见(不透明).
有任何想法吗?任何帮助将不胜感激.
我想向导航栏添加一个横幅,但要增加它的高度。我想复制 Apple Music 应用中艺术家页面的设计和行为:
它的行为就像普通的大标题一样,除了它已向下移动之外,它UIImageView
后面有一个粘性标签,并且当用户向下滚动足够远时它会返回其背景。您可以启动Apple Music,搜索艺术家并前往他们的页面亲自尝试。
我尝试了很多事情,例如在 上设置框架UINavigationBarLargeTitleView
,以及此答案中的代码: https: //stackoverflow.com/a/49326161/5544222
我已经使用以下代码掌握了UINavigationBarLargeTitleView
它:UILabel
func setLargeTitleHeight() {
if let largeTitleView = self.getLargeTitleView() {
if let largeTitleLabel = self.getLargeTitleLabel(largeTitleView: largeTitleView) {
// Set largeTitleView height.
}
}
}
func getLargeTitleView() -> UIView? {
for subview in self.navigationBar.subviews {
if NSStringFromClass(subview.classForCoder).contains("UINavigationBarLargeTitleView") {
return subview
}
}
return nil
}
func getLargeTitleLabel(largeTitleView: UIView) -> UILabel? {
for subview in largeTitleView.subviews {
if subview.isMember(of: UILabel.self) {
return (subview as! UILabel) …
Run Code Online (Sandbox Code Playgroud)