在UIScrollView中移动不同的UIView

时间:2013-12-14 15:53:49

标签: ios uiscrollview subview

在我的iOS应用程序中,我有一个滚动视图,其中有许多图像视图和文本视图。 我必须将所有这些视图移动到固定值,但我不想将它们移动到左,右或调整大小。我只想把它们放在一个活动上。问题是我不知道这些UIView的价值是什么。

这是我的代码:

for(UIView* subview in [myScrollView subviews])
{
    subview.frame = CGRectMake(0, 0, screenWidth, screenHeight);
} 

我想这样做:

for(UIView* subview in [myScrollView subviews])
{
    subview.frame = CGRectMake(previousValue+100, previousValue, previousValue, previousValue);
} 

我希望自己解释

2 个答案:

答案 0 :(得分:2)

如果您只想将它​​们向下移动,为什么不设置scrollView的contentInset?

scrollView.contentInset = UIEdgeInsetsMake(100, previousValue, previousValue, previousValue);

这将使所有子视图失效。

答案 1 :(得分:0)

尝试这样的事情:

UIView *lastView;
for(UIView* subview in [myScrollView subviews])
{
    CGrect lastFrame;
    if (!lastView) {
        lastFrame = CGRectMake(0,0,100,100); // your initial frame
    } else {
        lastFrame = lastView.frame;
    }
    lastFrame.origin.x += 100;
    subview.frame = lastFrame;
    lastView = subview;
}