gpt4 book ai didi

ios - 正确更改父 View 时无法更改 subview 的大小

转载 作者:行者123 更新时间:2023-11-29 00:47:41 24 4
gpt4 key购买 nike

我还有一些对象,但我想我基本上有两个 View 和一个按钮。其他人根本不会影响那些对象。

expandingView 位于屏幕上方,而 shinkingView 位于下方。它们相距 8 像素。

通过点击按钮,我想将expandingView的高度增加30,而另一个的高度减少30,这样我就可以在有限的区域内使一个更大,另一个更小。我的代码如下:

expandingView.frame.size.height += 30
shrinkingView.frame.size.height -= 30

shrinkingView.frame.origin.y += 30

问题是我无法在 shrinkingView 中更改 subview 。其中一个需要修复所以没关系,但另一个确实需要更改,因为它的父 View 改变了它的大小。

subview 正确链接到 UIButton 变量。我以与更改 super View 相同的方式键入代码,但没有任何变化,就好像我键入的代码不存在一样。从字面上看,它们根本没有任何效果。

为什么用同样的代码方式却改不了呢?是因为它们处于不同的层次结构中吗?

最佳答案

//takes in a view and for each subview (so every element inside if it is some kind of child of the view, it will be reduces. So all elements will be reduced. 
func reduceSubviews(view:UIView) {
for views in view.subviews {
views.frame.size.height -= 30
if(views.subviews.count > 0) {
reduceSubviews(views)
}
}
}
//apply to any view such as shrinkingView
reduceSubviews(shrinkingView)

好吧,坦率地说,这段代码进入了 shrinkingView,遍历了它的所有 subview ,并降低了它们的高度。或者它应该大声笑

关于ios - 正确更改父 View 时无法更改 subview 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38452880/

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