ios - 有谁知道为什么其他代码部分不能隐藏我的颜色选择器?
<p><p>我还是 Swift 4 的新手,我在互联网上找到了这个,并试图让这个按钮在图像按钮为 A 时显示“某些东西”。但是当我再次单击按钮时,只有它的图像按钮发生了变化,但是“东西”仍然没有隐藏。有人可以帮忙吗?</p>
<p>我已经完成了使用此动画的其他按钮,但该按钮正在显示库中的另一个按钮。
但是这个 1 不同,没有显示库中的另一个按钮,而是显示 ChromaColorPicker</p>
<pre><code>var sizeOff = UIImage(named: "Brush-Size")
var sizeOn = UIImage(named: "Brush-Size-On")
</code></pre>
<p>============================= 别的地方================= =====</p>
<pre><code>extension ViewController {
@IBAction func BrushColourClicked(_ sender: UIButton) {
if sender.currentImage == ColourOn {
sender.setImage(ColourOff, for: .normal)
} else {
sender.setImage(ColourOn, for: .normal)
} // Image first set
configureUI()
}
func configureUI() {
let colorPicker = ChromaColorPicker(frame: CGRect(x: 25.0, y: 410.0, width: 140.0, height: 140.0)) // Position & Size of Color Picker
ColourButtonCenter = colorPicker.center
colorPicker.center = BrushColour.center
colorPicker.delegate = self
colorPicker.padding = 5.0
colorPicker.stroke = 3.0
colorPicker.hexLabel.isHidden = true
colorPicker.layout()
view.addSubview(colorPicker)
colorPicker.alpha = 0
if BrushColour.currentImage == ColourOn {
UIView.animate(withDuration: 0.35, animations: {
colorPicker.alpha = 1
colorPicker.center = self.ColourButtonCenter
})
} // Animation show
else {
UIView.animate(withDuration: 0.35, animations: {
colorPicker.alpha = 0
colorPicker.center = self.BrushColour.center
})
} // Animation hide
}
}
</code></pre>
<p>我不知道是否
<code>colorPicker.alpha = 0</code>
工作与否</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>每次调用 <code>configureUI</code> 时,都会向 View 添加一个新的颜色选择器,然后在其上设置 alpha 动画。</p>
<p>因此,当您尝试隐藏 <code>colorPicker</code> 时,实际发生的是您正在添加一个带有 <code>alpha 0</code> 的新颜色选择器并将其动画化为 <code> alpha 0</code>(什么都不做),之前的 <code>colorPicker</code> 仍然可见,所以看起来好像没有任何变化。</p>
<p>为 <code>colorPicker</code> 创建一次变量并将其添加到 View 中,然后在 <code>configureUI</code> 函数中配置该实例。</p></p>
<p style="font-size: 20px;">关于ios - 有谁知道为什么其他代码部分不能隐藏我的颜色选择器?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/54366884/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/54366884/
</a>
</p>
页:
[1]