1

UIBlurEffectiOS 7 で導入された外観を生成するためにfromを使用しています。そのために、クラス リファレンスで説明されているようにUIVisualEffectView、ぼかしの上に描画したいものをプログラムで に追加します。contentViewUIBlurEffect

オブジェクトは、のUIBlurEffect背後にあるコンテンツにぼかし効果を適用しますUIVisualEffectViewcontentViewの に追加された ビューUIVisualEffectViewは、ぼかし効果の影響を受けません。

しかし、今は をUIScrollViewミックスに追加する必要があり、 を使用しなければならなかったという事実は、contentView私を完全に混乱させました。私は にあまり詳しくありませんUIScrollViewが、iOS 8 Swift Programming Cookbookには次の例が示されています。

ここに画像の説明を入力

を表示する必要はありませんimageViewが、代わりviewに、階層内の内部に多くのビューがある別のものです。正確にどこに追加しscrollViewますか?scrollViewとして設定しますsubviewcontentView? またはその逆に、のcontentViewとして? これが私の現在のコードです:subviewscrollView

class InfoVC: UIViewController {


    @IBOutlet weak var contentView: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        // blur
        let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
        blur.frame = view.frame
        view.addSubview(blur)
        blur.contentView.addSubview(self.contentView)

    }
4

1 に答える 1

2

ぼかし効果の上に何かをスクロールしたいですね。

その場合、ぼかしビューのコンテンツ ビューにスクロール ビューを追加する必要があります。contentViewがスクロールしたいビューであると仮定すると、次のように機能するはずです。

let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.light)) 
blur.frame = view.bounds
view.addSubview(blur)
UIScrollView scrollView = UIScrollView(frame:blur.bounds)
blur.contentView.addSubview(scrollView)
scrollView.addSubview(contentView)
scrollView.contentSize = contentView.frame.size // or whatever other size you like
于 2015-02-19T16:13:11.310 に答える