2015-06-04 2 views
0

Как я могу получить значение переменной в другую переменную, не имея одного указателя? То есть в приведенном ниже коде значение моего keepScale обновляется до 1, когда после recognizer.rotation установлено значение 1.Отключить указатели в Swift

код

var keepScale : CGFloat = 1 

func handlePinch(recognizer : UIPinchGestureRecognizer) { 
     if let view = recognizer.view { 
      view.transform = CGAffineTransformScale(view.transform, 
       recognizer.scale, recognizer.scale) 

      keepScale = recognizer.scale 
      println(keepScale) 

      recognizer.scale = 1 
      println(keepScale) 

     } 
    } 

Пример Бревна

0,5

1,0

+3

Это ваш точный код? Поведение, которое вы описываете, - это не то, что вы должны видеть. CGFloat - это структура и имеет семантику копирования. –

+0

Да точно код. Я думал, что это тоже странно, мне никогда не приходилось иметь дело с указателями в Свифте. Может быть, проблема не связана с этим кодом, я проверю. – SpaceShroomies

ответ

0

Хорошо, таким образом, так как на самом деле масштаб является отношением я га d умножить значение keepScale на recognizer.scale, а не просто установить его равным.

Смежные вопросы