我正在尝试制作一个SnapScrolling视图,该视图允许某人输入一系列视图,并且它将自动偏移它们,以使其看起来好像在捕捉。为了正确地为数组中的每个视图测量合适的偏移量,我需要在SnapScrolling视图的初始化程序中获得子视图的尺寸,以便我可以计算总内容高度(数组中的视图可以具有不同的大小)。我可以编写一个函数来返回视图的尺寸为CGFloats或CGSize吗?
这是我目前的尝试:
* testRectangle是任意视图
var content: [testRectangle]
var rectangleHeights:[CGFloat]
var totalContentHeight:CGFloat = 0
// TODO: Change to content type or make generic
init(content: [testRectangle]){
self.content = content
self.rectangleHeights = .init(repeating: 0, count: self.content.count)
for rect in 0..<self.content.count{
self.rectangleHeights[rect] = // HEIGHTS OF VIEWS
self.totalContentHeight = self.totalContentHeight + self.rectangleHeight[rect]
}
}