gpt4 book ai didi

ios - 将等宽乘数添加到没有 super View 的 .xib 组件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:20:52 25 4
gpt4 key购买 nike

为了弄清楚这个问题,我需要解决以下几个方面

  1. 我正在按照这篇文章创建可重用的按钮组件,它本质上只是一个带有标签和用户操作的 ImageView ,它基于 .xib and cocoa class files
  2. 我也在关注这个auto layout practice根据屏幕宽度调整我的一些元素的大小

问题

我希望我的按钮组件是屏幕宽度的 0.4,问题是它没有我可以调整大小的 super View ,即当我将它包含到某些 View Controller 中时它只有一个。由于此选项,我禁用了自动布局中的“等宽”选项。作为解决方法,我可以在将其包含到某个 View 中后调整它的大小,但这会损害组件的可重用性,我宁愿它默认占据其 super View 的 0.4 等宽。

关于如何实现这一点有什么建议吗?

最佳答案

您可以使用 UIView method didMoveToSuperview() 获取 super View 。每当 super View 更改时都会调用它。例如:

override func didMoveToSuperview() {
super.didMoveToSuperview()
guard let currentSuperview = self.superview else { return }
}

然后您可以以编程方式设置宽度约束,因为您有一个与之关联的父 View 。

关于ios - 将等宽乘数添加到没有 super View 的 .xib 组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52134382/

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