質問: NSValue(caTransform3D : transform) imageview.layer.add(rotateAnimation, forKey: nil) } ### 補足情報(言語/FW/ツール等のバージョンなど) Swift3
回答: > > imageviewが重なっている状態の場合、アニメーションをするとimageviewが隠れてしまうらしいです > > > UIImageViewに限った話ではありません。 背面Viewが透明でない限り、前面Viewの後ろに回った部分は背面Viewに隠れてしまいますので、半分しか見えないという状況になっています。 解決方法1 ====== CALayerの`zPosition`を使う。 ``` imageview.layer.zPosition = imageview.frame.width/2 ``` 垂直になった時の奥行き(View幅の半分)だけ手前に移動させています。(移動量に関してあまり自信なし。うまくいっているようなので間違ってない?) 解決方法2 ====== 階層を分ける。 ``` View | +-- 背面ImageView | +-- 前面ImageView ``` 階層が違えば、回転させても隠れることはありません。 ただし、Storyboard上ではUIImageViewの上にViewを乗せることが出来ませんので、コードでaddSubviewして下さい。(無理やり乗せる方法もあるにはありますが..)