2011-09-01 89 views
0

我试图创建UIImageViews,这是子视图添加到UIScrollView之间的差距。如何在UIScrollView中修改UIImageViews子视图的位置?

我想我可以通过修改UIImageView的CGRect来完成以下工作。 CGRect frame = imageView.frame;

frame.origin.x = <some values> 
frame.origin.y = 0 
imageView.frame = frame; 

通过修改x值,我认为它会帮助我在UIScrollView内部定位UIImageViews。

但是,我意识到为frame.origin.x设置的值无关紧要。由于UIScrollView中的每个UIImageView都将并排放置,没有任何空白区域。

+0

我会再次检查你的frame.size.width。设置frame.origin.x是正确的方法。也许UIImageView仍然重叠? – picciano

+0

我的所有frame.size.width都返回相同的值。是与UIImageViews重叠相关的frame.size.width?是不是frame.size.width只是CGRect的宽度? – tommi

回答

0

我认为你是以错误的方式去做的。您无法通过

view.frame.origin.x = something; 

编辑视图的位置,您应该分配新帧,像这样:

view.frame = CGRectMake(x, y, w, h); 

在你的情况下,它看起来就像这样:

CGRect frame = imageView.frame; 
CGFloat frameX = frame.origin.x; 
CGFloat frameY = frame.origin.y; 
CGFloat frameW = frame.size.width; 
CGFloat frameH = frame.size.height; 

frameX = <some values> 
frameY = 0; 

imageView.frame = CGRectMake(frameX, frameY, frameW, frameH); 
+0

嗨@Kashiv,我做了你所说的。还做了一个CGRect的NSLog,它反映了我为每个UIImageView生成的x坐标。 – tommi

+0

Hi @Kashiv。谢谢。我明白了,为了让我的问题变得更糟,甚至在我添加了代码后,我甚至开始重新整理我的视图。 – tommi

相关问题