業務で少しハマったのでメモ。
問題点
API通信成功時のみ、View(仮にmainView
とする)内のコンテンツを表示させたかった。
→ mainView
の上にemptyView
という別のViewを載せ、API通信成功後、Bをフェードアウトさせるようにしたい。
emptyView.isHidden = true
isHidden
プロパティはアニメーションしないため、API通信成功後などにemptyView
を消そうとすると、見た目上、突然emptyView
が消滅したかのように見えてしまう。
解決方法
UIView.animate
を使った実装にして、alpha値でフェードアウトするように見せた。
UIView.animate(withDuration: 0.3, animations: {
self.emptyView.alpha = 0
}, completion: { _ in
self.emptyView.isHidden = true
})
参考URL