从另一个类访问时,swift 类变量不会被更改

标签 swift xcode cocoa-touch var cgfloat

我有一个更新 rgb 变量的函数。当它在类中调用时,它工作正常,但如果我尝试通过另一个类访问它,则不会执行任何操作。

var red : CGFloat! = 0.5;
var green : CGFloat! = 0.5;
var blue : CGFloat! = 0,5;

func updateColour(r:CGFloat, g:CGFloat, b:CGFloat){
    red = r;
    green = g;
    blue = b;
}

我正在尝试使用下面的代码设置另一个类的值。我使用打印命令来确保正在调用该函数,但变量不会更新。

    let canvas = canvasViewController() as canvasViewController;
    canvas.updateColour(r: red, g: green, b: blue)

不确定我是否错误地设置了变量或错误地访问了类,但我们将不胜感激任何帮助。

最佳答案

实际上,我认为你做错了什么,你需要重新审视你的代码,或者与我们分享更多代码。

顺便说一句,我在 Playground 中的 Swift 3.0 中尝试了您的代码,一切正常,您自己尝试一下:

class canvasViewController {
    var red : Float! = 0.5;
    var green : Float! = 0.5;
    var blue : Float! = 0.5;

    func updateColour(r:Float, g:Float, b:Float){
        red = r;
        green = g;
        blue = b;
    }
}
class anotherClass {
    func checkUpdateColour() {
        let canvas = canvasViewController()
        canvas.updateColour(r: 0.25, g: 0.25, b: 0.25)
        canvas.red
    }
}
var another = anotherClass()
another.checkUpdateColour()

关于从另一个类访问时,swift 类变量不会被更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41148341/

相关文章:

ios - XCode 5.1 预处理器宏不工作

iphone - 在 iPad 中部署为 iPhone

xcode - 根据内容动态改变UIWebview的大小

ios - 在 swift 中创建 json 对象的最佳方式是什么?

ios - 谷歌登录 404 错误与 swift

ios - Xcode UI 测试按钮未点击

iphone - NSKeyedUnarchiver - 如何防止崩溃

iphone - YouTube WebView - 视频 ID

c - 如何将class1中编写的方法调用到class2中?

swift - 使用 DispatchGroup 相对于基本计数器类的好处