【问题标题】:Overlap UIButton on two or more views on swift在 swift 上的两个或多个视图上重叠 UIButton
【发布时间】:2021-06-15 13:07:42
【问题描述】:

我试图在两个或多个视图上重叠按钮。因此,当我在第一个视图上添加它时,它没有显示在第二个视图上,所以我希望一个按钮必须显示在两个视图上。

【问题讨论】:

  • 您能向我们展示最终产品吗?你到底想要什么

标签: ios swift storyboard


【解决方案1】:

您可以制作两个视图并将第二个视图嵌入到第一个视图,然后将按钮嵌入到第二个视图,并且可以使用其 Y 轴进行播放

class overlapViewcontroller:UIViewController {
    
    private let firstView:UIView = {
        let view = UIView(frame: CGRect(x: 10,
                                        y: 100,
                                        width: 350,
                                        height: 50))
        view.backgroundColor = .green
        return view
    }()
    
    private let secondView:UIView = {
        let view = UIView(frame: CGRect(x: 10,
                                        y: 10,
                                        width: 330,
                                        height: 30))
        view.backgroundColor = .purple
        return view
    }()
    
    private let button:UIButton = {
        let button = UIButton(frame: CGRect(x: 10,
                                            y: -5,
                                            width: 310,
                                            height: 20))
        button.setTitle("Button", for: .normal)
        button.backgroundColor = .systemOrange
        return button
    }()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = .systemBackground
        view.addSubview(firstView)
        firstView.addSubview(secondView)
        secondView.addSubview(button)
    }
}

【讨论】:

    【解决方案2】:

    你试过了吗?您需要将按钮添加到容器子视图并添加

    这一行 container.bringSubviewToFront(button)

    https://www.hackingwithswift.com/example-code/uikit/how-to-bring-a-subview-to-the-front-of-a-uiview

    【讨论】:

      【解决方案3】:

      你需要

      • 将按钮添加到最后一个按钮,这样它就可以成为子视图堆栈中的顶部按钮
      • 或申请superview.bringSubviewToFront(button)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-06
        • 1970-01-01
        • 2014-12-08
        • 1970-01-01
        • 2018-06-04
        • 1970-01-01
        • 2020-07-04
        • 2015-11-01
        相关资源
        最近更新 更多