2016-12-14 1 views
0

У меня есть функция, которая обновляет переменные 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) 

Не уверен, что я неправильно задаю переменные или получаю доступ к классу неправильно, но любая помощь будет принята с благодарностью.

+0

Вы, представляя/толкая ** ** точный ViewController вы создали? Как вы представляете контрольный элемент «cavas»? Поделитесь своим кодом. Также здесь 'as canvasViewController 'избыточен – Honey

+0

Вы должны получить ссылку' canvasViewController'. Вы создаете экземпляр другого VC. –

+0

см. [Здесь] (http://stackoverflow.com/questions/10933939/how-to-switch-views-programmatically-in-a-viewcontroller-xcode-iphone) – Honey

ответ

0

На самом деле, я думаю, вы сделали что-то не так, вам нужно пересмотреть свой код или поделиться с нами другим кодом.

Кстати, я попробовал ваш код в Swift 3.0 в Playground и все прекрасно работает, попробуйте сами:

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() 
Смежные вопросы