jsdw_ios/QuickLocation/Section/Home/Bubble/BubbleKnowledgeView.swift

68 lines
1.8 KiB
Swift

//
// BubbleKnowledgeView.swift
// QuickLocation
//
import UIKit
final class BubbleKnowledgeView: UIView {
lazy var navView = BaseNavigationView(title: "气泡知识")
private let gradientLayer: CAGradientLayer = {
let layer = CAGradientLayer()
layer.colors = [
UIColor(hexStr: "#E7FFF2").cgColor,
UIColor.white.cgColor
]
layer.locations = [0, 0.28]
layer.startPoint = CGPoint(x: 0.5, y: 0)
layer.endPoint = CGPoint(x: 0.5, y: 1)
return layer
}()
private let scrollView: UIScrollView = {
let view = UIScrollView()
view.alwaysBounceVertical = true
view.showsVerticalScrollIndicator = false
return view
}()
private let contentImageView: UIImageView = {
let view = UIImageView(image: UIImage(named: "Bubble/knowledge"))
view.contentMode = .scaleAspectFit
return view
}()
override init(frame: CGRect) {
super.init(frame: frame)
backgroundColor = .white
setupUI()
}
required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") }
override func layoutSubviews() {
super.layoutSubviews()
gradientLayer.frame = bounds
}
private func setupUI() {
layer.insertSublayer(gradientLayer, at: 0)
addSubview(navView)
navView.layoutChain.top().edgesHorzontal().height(kNaviHeight)
addSubview(scrollView)
scrollView.layoutChain.topToBottomOfView(navView).edgesHorzontal().bottom()
scrollView.addSubview(contentImageView)
contentImageView.layoutChain
.top(8)
.left(16)
.right(16)
.widthToView(scrollView, offset: -32)
.heightToWidth(1450.0 / 676.0)
.bottom(24)
}
}