ios - Swift 图像按钮上的淡入淡出(过渡效果)

标签 ios image swift uibutton

我有一个具有默认状态和突出显示状态的 UIButton ,因此当它处于默认状态时,它会显示 image.png ,当单击它时,它会显示 imageOn.png

这与图像之间唯一变化的是背景颜色。

我无法做的事情是当单击按钮时在这两个图像之间进行淡入淡出,以进行精美的背景颜色更改。我正在使用 Swift。

最佳答案

好吧,我现在没有时间测试这个,但我认为你的代码应该看起来像这样。

override func viewDidLoad() {

let normalImage = UIImage(named: "image.png") as UIImage!
let selectedImage = UIImage(named: "imageOn.png") as UIImage!

var mybutton:UIButton  = UIButton.buttonWithType(UIButtonType.System) as UIButton

mybutton.setTitle("Your title", forState: UIControlState.Normal)
mybutton.frame = CGRectMake(0, 0, 100, 44)

self.view.addSubview(button as UIView)
//set normal image 
mybutton.setImage(normalImage, forState: UIControlState.Normal)
//set highlighted image 
mybutton.setImage(selectedImage, forState: UIControlState.Selected)

mybutton.addTarget(self, action: "buttonClicked:", forControlEvents: UIControlEvents.TouchUpInside)

}

func buttonClicked(sender:UIButton)
{

if (sender.selected)  { 
    UIView.animateWithDuration(1.5, animations: {
        self.normalImage.alpha = 1.0
        self.selectedImage.alpha = 0.0
    sender.selected = !sender.selected; 
}
else{  
    UIView.animateWithDuration(1.5, animations: {
        self.normalImage.alpha = 0.0
        self.selectedImage.alpha = 1.0  
}

}

祝你好运!

关于ios - Swift 图像按钮上的淡入淡出(过渡效果),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30786258/

相关文章:

ios - iOS AVSpeechSynthesizer 是否支持嵌入式语音命令

css - 如何在 Web 应用程序中渲染多个尺寸的同一图像?

c# - 保存位图时内存泄漏?

ios - 通过 TOR swift 路由 WKWebView

javascript - 按下后退按钮时避免图像闪烁

android - 如何使 ClipPath 的背景透明?

ios - PDFKit 的 PDFDocument init(url : URL) does not work with HTTPS

html - 如何将两个不同的图像放在一个 div 中。谁能帮我

swift - 为添加 absoluteValue 属性的 Double 类型编写扩展

ios - 拖动 UIView 结束时会丢失手势