ios - 当创建带有框架的惰性按钮时,这是在左上角创建的,为什么会发生这种情况?

标签 ios swift button uibutton

我创建了这个“filterButton”并将其设置为在“menubutton”的确切位置上创建,“filterButton”直接转到 View 的左上角。

lazy var filterButton: UIButton! = {
    let button = UIButton(frame: CGRect(x: self.menuButton.frame.origin.x, y: self.button.frame.origin.y, width: 45, height: 45))
    button.translatesAutoresizingMaskIntoConstraints = false
    button.backgroundColor = .blue
    button.clipsToBounds = true
    return button
}()

当我检查并打印“filterButton”的框架时,它具有“menuButton”的值,为什么会发生这种情况?

最佳答案

在将filterButton添加到 View 时添加以下约束

filterButton.leftAnchor.constraint(equalTo: menuButton.leftAnchor).isActive = true
filterButton.topAnchor.constraint(equalTo: menuButton.topAnchor).isActive = true
filterButton.rightAnchor.constraint(equalTo: menuButton.rightAnchor).isActive = true
filterButton.bottomAnchor.constraint(equalTo: menuButton.bottomAnchor).isActive = true

关于ios - 当创建带有框架的惰性按钮时,这是在左上角创建的,为什么会发生这种情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52657573/

相关文章:

javascript - 如何使用map函数正确显示多个Flatlist?

html - 将 HTML 表格抓取到 UITableView

swift - 如何从 UICollectionCell 中访问 UIViewController 函数?

ios - 以曲线形状剪切贝塞尔曲线路径

c# - 如何在 .NET Winforms 的按钮组中一次选择一个按钮

Javascript:使用按钮 Onclick 函数创建多个 Li 项目

ios - 使用 StoreKit 显示有关其他应用程序的信息。 (不是应用内购买)

ios - 以编程方式在 tableView 和 BottomLayoutGuide 之间添加 View

javascript - 单击页面上的所有按钮

iOS - AVPlayer 不播放 mov 文件