SelectClientDetailView

SelectClientDetailView

我在scrollview中有两个子视图。我需要以编程方式定位两个子视图。我通过在DispatchQueue.main.async内编写代码来正确地做到了。这是代码:

DispatchQueue.main.async
{
  self.SelectClientDetailView.frame = CGRect(x: 0, y: 637, width: self.SelectClientDetailView.frame.size.width, height: self.SelectClientDetailView.frame.size.height)
  self.SelectClientDetailView2.frame = CGRect(x: 0, y: 837, width: self.SelectClientDetailView2.frame.size.width, height: self.SelectClientDetailView2.frame.size.height)
}

它的工作正常,但是当我滚动滚动视图时,这两个视图都回到了原来的位置。如何解决。其默认y位置将为SelectClientDetailView:400和SelectClientDetailView2:600

最佳答案

如果只想更改frame Y的位置,请尝试以下方法:

self.SelectClientDetailView.frame.origin.y = 637
self.SelectClientDetailView.frame.origin.y = 837

如前所述,您可能需要检查视图层次结构,以确保将其实际添加到UIScrollView中(而不是其他位置)。

10-02 01:48