0
ビューが表示され、左から消滅するようにします(ユーザーに有用な情報があるかどうかによって異なります)。ViewControllerナビゲーション後にアニメーション位置が失われます
私は制約を使用して配置することを見たいので、ストーリーボードから作成する必要があります。
このコードスニペットでは、コードを表示するときにビューを移動する必要があります。 しかし、次のVCに進むと、ビューが元の位置に再び現れ、VCから最初のVCに戻るときに、実際に元の位置に戻っていることがわかります。
ビューの「状態」を変数に保存して、VCのさまざまなライフサイクルで表示/非表示にしていましたが、本当に役に立たなかったものです。
これを達成する最良の方法はなんですか?
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var myView: UIView!
var boxIsVisible = false
override func viewDidLoad() {
super.viewDidLoad()
}
var originalX:CGFloat = 0.0
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
originalX = self.myView.frame.origin.x
if boxIsVisible == false {
self.myView.center.x -= 200
}
}
@IBAction func slideInAction(sender: AnyObject) {
UIView.animateWithDuration(3.0, animations: {
self.myView.center.x = self.originalX
self.boxIsVisible = true
})
}
@IBAction func slideOutAction(sender: AnyObject) {
UIView.animateWithDuration(3.0, animations: {
self.myView.center.x = -200
self.boxIsVisible = false
})
}
}
プロジェクトはここからダウンロードできます:https://github.com/drollig8/UIViewAnimation –