見た目

movie.gif

(gifだとわかりづらい…orz)

処理抜粋

PopupViewController.swift
    override func viewDidLoad() {
        super.viewDidLoad()

        self.baseViewWidthConstraint.constant = 0
        self.baseViewHeightConstraint.constant = 0
        self.view.layoutIfNeeded()
    }

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        self.baseViewWidthConstraint.constant = 250
        self.baseViewHeightConstraint.constant = 250

        UIView.animate(withDuration: 1.2, delay: 0.3, usingSpringWithDamping: 0.6, initialSpringVelocity: 10, options: .curveEaseOut, animations: { () -> Void in

            self.baseView.alpha = 1.0
            self.view.layoutIfNeeded()

        }, completion: nil)
    }

・AutoLayoutでPopupのサイズをいじってアニメーションを実現しています。
・高さも変えるため、baseViewのHeightの制約のPriorityを下げています。

コードはこちらです。

https://github.com/tony1224/PopupAnimationSample

もう少し滑らかでくっきりとバウンドがわかるような処理にしたい(´・ω・`)

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.