ios - 如何找到在 ViewDidLoad 中调用的 UIImage 的值,传递给 Swift 中的另一个函数

标签 ios xcode swift

我正在使用一个简单的函数在加载 View Controller 时调用随机图像。

override func viewDidLoad() {
    super.viewDidLoad()
    var randomtest = ReturnRandom()
    mainImage.image = UIImage(named: randomtest)
}

我希望按钮的操作基于显示的图像。例如

@IBAction func Button1(sender: AnyObject) { 
switch randomtest {
case 1: //Do something here
case 2: //Do something different here
default:  
}

但是我不知道如何从 ViewDidLoad 中获取“randomtest”的值。我似乎也无法在 ViewDidLoad 之外创建随机数,然后将变量传入。抱歉,我是这一切的新手,iOS 开发距离 php 有很长的路要走...

最佳答案

我无法将我的函数的结果声明为实例变量的原因是我的函数也是一个实例函数。我不能称之为,没有实例。所以这个

class ViewController : UIViewController {

var randomtest: Int = ReturnRandom();

将返回“调用中参数#1 缺少参数” 有关更多详细信息,请查看这个非常有用的线程 on setting initial values 。由于我的函数非常简单,我只是在设置初始值时计算属性,不需要额外的类级函数。

dynamic var randomtest:String {
let imageNumber = arc4random_uniform(3)
var imageString = String(imageNumber)
return (imageString)}

希望这对某人有帮助。

关于ios - 如何找到在 ViewDidLoad 中调用的 UIImage 的值,传递给 Swift 中的另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28575528/

相关文章:

ios - 如果它引用的 ViewControllers 是 NavigationControllers,如何给 TabBarController 项目命名?

ios - 如何在 PNG 的 Swift 中在保存到 .WriteToFile 的图像顶部插入标签

ios - 在 iOS 9.1 中,从前景和背景中的 Assets 图像接收到的数据大小不同?

ios - OCUnit的测试用例类中是否需要在public接口(interface)中定义测试方法

ios - 如何快速创建单例对象

OSX El Capitan 上的 Xcode 7.1,iOS 7 模拟器 - 它应该可以工作吗?

ios - 我怎样才能让对象(我通过对象库添加的)分层在 Xcode 中以编程方式创建的对象之上?

ios - viewDidAppear 调用了在 iOS8 中被关闭的 View Controller

ios - 更改 textColor、viewBackground 和 subview 背景

objective-c - Obj-C 到 Swift 桥接问题 : NS_ENUM -> enum