如何在 swift 中单击按钮时更改 uiimage 的图像?
Posted
技术标签:
【中文标题】如何在 swift 中单击按钮时更改 uiimage 的图像?【英文标题】:how to change uiimage's image on button click in swift? 【发布时间】:2014-10-04 08:52:04 【问题描述】:我正在尝试通过快速单击按钮来更改 uiimage 控件的包含图像。为此,我编写了一个简单的“猜猜我举起多少根手指”的应用程序。我已经阅读了一些 *** 文章,但无法解决问题。下面你可以看到我的代码和我的用户界面。点击后如何更改图片?
这是我的代码:
import UIKit
class ViewController: UIViewController
@IBOutlet var myImageView: UIImageView!
@IBOutlet var inputField: UITextField!
@IBAction func clickedGuessButtonAction(sender: AnyObject)
println("Guess button clicked")
var randomX = Int(arc4random()%6)
println("randomX = \(randomX)")
var guess = inputField.text.toInt();
let image0 = UIImage(named: "images/qm.jpg")
let image1 = UIImage(named: "images/tick.jpg")
let image2 = UIImage(named: "images/cross.jpg")
if((inputField.text) != nil)
if(guess == randomX)
println("correct")
myImageView.image=UIImage(named: "tick.jpg") // THIS IS NOT WORKING
myImageView.image=image1 // THIS IS NOT WORKING TOO
inputField.resignFirstResponder();// hides keyboard
else
println("wrong")
myImageView.image=UIImage(named: "cross.jpg")
inputField.resignFirstResponder();//hides keyboard
else
println("invalid input. requires integer only")
inputField.resignFirstResponder();// hides keyboard
override func viewDidLoad()
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
override func didReceiveMemoryWarning()
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
这是我的用户界面:
【问题讨论】:
【参考方案1】:您无需指定资产目录的名称或图像文件的扩展名。尝试删除那些。例如,
myImageView.image = UIImage(named: "tick")
【讨论】:
从 Xcode 9 beta 3 上的 Swift 4 开始,我们现在是否需要包含扩展,例如“.jpeg”? @AllisterBah 不。无需指定文件扩展名。【参考方案2】:这可能取决于您使用的 Xcode 版本。对我来说,以下工作:
ImageView.image = UIImage(named: "Elephants.jpg")
【讨论】:
显然这对问题的作者不起作用。您能否详细说明这可能适用于哪个版本(例如您使用的是什么版本)?【参考方案3】:在斯威夫特中:
myImageView = "nameOfImage";
【讨论】:
那是轻量级的 swift 伙伴。你甚至没有调用 UIImage 的类型。 改成这样:myImageView: UIImage = UIImage(name: "nameOfImage")
然后加一点解释。这需要更新......无论哪种方式都得到了回答。但我建议更新答案。以上是关于如何在 swift 中单击按钮时更改 uiimage 的图像?的主要内容,如果未能解决你的问题,请参考以下文章
Swift:如何在单击提交按钮时更改 UIButton 图像