2017-02-09 3 views
0

würde Ich mag diese Art von einfachen Animationseffekt erreichen:UIView Animation unter dem UILabel

enter image description here

So gibt es diese beiden Labels (Label: und 29,8, die im Viewcontroller als @IBOutlet weak var valueLabel: UILabel! ist) und UIView unter diesen beiden (@IBOutlet weak var pm10View: UIView!) Leider funktioniert die CGAffineTransform nicht, da sie dieses Rechteck ändert, da sich ein Ankerpunkt in der Mitte befand. Ich habe versucht, den Ankerpunkt auf der linken oberen Ecke Einstellung aber dann die UIView war misplace:

pm10View.layer.anchorPoint = CGPoint(x: 0, y: 0) 

UIView.animate(withDuration: 3) { 

    self.pm10View.transform = CGAffineTransform(scaleX: 2.2, y: 1.0) 
} 

So wie diese UIView in der gleichen Position zu halten, wie in der Main.storyboard (Verankerung der oberen linken und untere linke Ecke) und ändere nur den Y-Wert. Während die UIView unter dem UILabel ist, muss es in Stack View sein oder etwas, um alles zu erhalten?

Antwort

3

Entschuldigung, Ihre Frage ist unklar? Möchten Sie die Breite des Etiketts erhöhen? wenn ja,

UIView.animate(withDuration: 1.0) { 
    yourLabel.frame.size.width = newWidthValue; 
    yourLabel.layoutIfNeeded() 
} 
+0

huh, ich dachte nicht, dass es so einfach war, danke – codddeer123