私は何でも私のCAShapeLayer
の不透明度を変更することはできません。私は不透明度を設定しようとしました:CAShapeLayerアルファ/不透明度の値を変更するには?
bottomProgressBar.strokeColor = UIColor.white.cgColor
bottomProgressBar.opacity = 0.1
動作しませんでした。その後、私はこれを試してみました:
bottomProgressBar.strokeColor = UIColor(displayP3Red: 255, green: 255, blue: 255, alpha: 0.1).cgColor
どちらの場合も、アルファ値は1
でこれを行うにはそこに別の方法ですか?あるいは私はそれらを間違って設定していますか?
編集:ここでは
が私のコードです:
これはUIView
から継承するクラスです:
override init(frame: CGRect) {
super.init(frame: frame)
configure()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
configure()
}
func configure() {
bottomProgressBar.strokeColor = UIColor.white.cgColor
bottomProgressBar.opacity = 0.1
bottomProgressBar.lineWidth = self.frame.height
bottomProgressBar.strokeStart = 0
bottomProgressBar.strokeEnd = 1
self.layer.addSublayer(bottomProgressBar)
topProgressBar.strokeColor = UIColor.white.cgColor
topProgressBar.lineWidth = self.frame.height
topProgressBar.strokeStart = 0
topProgressBar.strokeEnd = 1
self.layer.addSublayer(topProgressBar)
}
編集2:
override func layoutSubviews() {
super.layoutSubviews()
let path = UIBezierPath()
path.move(to: CGPoint(x: 0, y: 0))
path.addLine(to: CGPoint(x: self.frame.width, y: 0))
bottomProgressBar.path = path.cgPath
topProgressBar.path = path.cgPath
}
が編集3:
私はこれらの両方のソリューションをテストしましたが、どちらも私の仕事です。 – Brian
正しいものを変更していますか – zombie
ボトムビューとトップビューのプログレスバーがあり、ボトムビューのアルファ値は0.1に設定されていますが、常に1です。両方のビューのアルファ値は1に設定されています:/ – Kobe