| categories:swift develop

半透明のモーダルビュー

iOS6の頃はなんか面倒だったような気がした、下のViewが透けて見えるようなモーダルビューの設定。非常に簡単にできるようになってました。

半透明のモーダルビュー設定

まずはモーダルビュー自体を半透明化します。背景色を選び透明度を決めます。

それと、StoryboardにてのSegway設定だとなぜかうまく物と、行かないものがありました。あまり深くは掘り下げていませんが、とりあえず情報まで(解決:下記参照)。

二通りあるようですが、厳密な違いはわからず、表示をテストで行うが全く同じに見えます。。

  override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
        if segue.identifier == "toSettingView" {
            if let destinationVC = segue.destinationViewController as? SettingViewController {
                destinationVC.modalPresentationStyle = 
                        UIModalPresentationStyle.OverCurrentContext
                        // UIModalPresentationStyle.OverFullScreen
                destinationVC.delegate = self
            }
        }
    }

で、色々といじっていたら、インスペクターのPresentationの所でも変更ができます。コードでうまくいかなかった時にはこちらでいけます。知らなかったわ。。。。

見た感じこんな風になります(使わないけど、悪い例)。まぁ想像通り、使うなら文字色とか背景の色とかを考慮する必要がありますわな。

追記:すぐ上の白点ボタンの位置がずれてるな。。。

comments powered by Disqus