繁体   English   中英

获取 UIStackView 排列子视图的中心点

[英]Get the centre point of UIStackView arranged subviews

我在 UITableViewCell 中有一个自定义视图。 在这个视图里面是一个简单的 UIStackView,有 4 个图像(以编程方式添加)。 我需要这些图像相对于 UIView 超级视图的中心点或原点。 我尝试了几种方法,但所有四个排列的子视图的中心点或原点都是相同的。

在此处输入图片说明

这是一个简化的代码:

for i in 0...3 {
                 
   print(stepsStack.arrangedSubviews[i].frame.origin) //(0,0) for all 4
   print(stepsStack.arrangedSubviews[i].convert(stepsStack.arrangedSubviews[i].frame.origin, to: self)) //(0,0) for all 4
            
   print(stepsStack.arrangedSubviews[i].convert(stepsStack.arrangedSubviews[i].center, to: self)) //(10.0, 9.5) for all 4
   print(stepsStack.convert(stepsStack.arrangedSubviews[i].center, to: self)) //(10.0, 9.5) for all 4
                
 }

找到了解决办法。

在调用上述 for 循环之前调用stepsStack.layoutIfNeeded() 需要明确的是,堆栈视图已添加到我的自定义 UIView 类的layoutSubviews方法中。 感谢拉梅的提示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM