gpt4 book ai didi

ios - 将 subview 添加到模糊 View

转载 作者:行者123 更新时间:2023-11-30 12:53:05 27 4
gpt4 key购买 nike

        if !UIAccessibilityIsReduceTransparencyEnabled() {
self.blurOutletTop.backgroundColor = UIColor.clear

let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.dark)

let blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.frame = self.blurOutletTop.bounds
blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight]

self.view.addSubview(blurEffectView)

//self.logoOutlet.addSubview(blurEffectView)

}
else {
self.view.backgroundColor = UIColor.black
}
}

我在屏幕顶部附近有一个导航栏大小的 UIView。上面的代码为其添加了模糊效果。我想做的是将导航按钮添加到 View 顶部,这样它们就不会模糊,但仅通过 Storyboard执行此操作会导致按钮也变得模糊。

我读到将按钮的导出作为 subview 添加到blurEffectView会将按钮放在顶部,但是当我取消注释时

self.logoOutlet.addSubview(blurEffectView)

blurOutletTop 的位置被重新定位,按钮的背景被模糊,但标签文本没有被模糊,并且按钮本身被重新定位。我尝试过添加约束,但也没有帮助。

让我的按钮/图像超出我的blurTopOutlet 的最简单方法是什么?

最佳答案

我在代码中对 UIVisualEffectView 进行了子类化,然后将各种控件作为 subview 添加到其中。非常好的效果。由于 View 层次结构的期望,不确定是否可以 100% 通过 IB 完成。

  • (1) 在 IB 中创建“主” View 并添加约束。这里的替代方案是我所做的,子类 UIVisualEffectView。
  • (2) 在代码中创建“主” View subview ,将它们添加到“主” View 中,并在代码中添加约束。
  • (3) 由于您希望某些操作与某些 subview (UIButton)相关联,因此请务必为它们编写 addTarget(target:for:) 调用代码。

添加编辑:您可以通过 IB 完成大部分操作。设置所有内容,并且由于 UIButtons 是模糊 View 的 subview ,因此尝试使用 BringSubview(ToFront:)。如果这有效的话,事情可能会容易得多! (我是老派,更喜欢编码。)

关于ios - 将 subview 添加到模糊 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40730041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com