Iphone 如何使用UIScrollView在不滚动背景图像的情况下滚动内容?

Iphone 如何使用UIScrollView在不滚动背景图像的情况下滚动内容?,iphone,uiscrollview,Iphone,Uiscrollview,我正在尝试使用UIScrollView在不滚动背景图像的情况下滚动内容 我正在使用IB并将FileOwner视图设置为指向滚动视图(图像视图是滚动视图的子视图)。我已经使图像高度为960像素 我还在拥有此UIView的vierController中设置了滚动内容大小 (无效)viewDidLoad{ UIScrollView*临时滚动视图=(UIScrollView*)self.view; contentSize=CGSizeMake(320960); } 我的问题是,图像只会随着内容的移动

我正在尝试使用UIScrollView在不滚动背景图像的情况下滚动内容

我正在使用IB并将FileOwner视图设置为指向滚动视图(图像视图是滚动视图的子视图)。我已经使图像高度为960像素

我还在拥有此UIView的vierController中设置了滚动内容大小

  • (无效)viewDidLoad{ UIScrollView*临时滚动视图=(UIScrollView*)self.view; contentSize=CGSizeMake(320960); }
我的问题是,图像只会随着内容的移动而出现

我已尝试在viewDidLoad中删除设置,但滚动停止工作

我还尝试更改图像的位置,并将其放置在VIEW而不是Scoll VIEW下(顺便说一句,Scroll VIEW是视图的子视图),但这导致了应用程序中断(终止错误)

任何建议都将不胜感激。

最简单(也是正确的方法)是为您的UIScrollView设置背景图像

UIImage *img = [UIImage imageNamed:@"image.png"];
[scrollView setBackgroundColor:[UIColor colorWithPatternImage:img]];

谢谢。这非常有帮助

我要补充的一点是(如果这是显而易见的,请原谅,但对于新加入该平台的人(即我),这需要一点玩转)

我将“unset”示例中的代码放在UIViewController的viewDidLoad中设置contentSize=CGSizeMake之后,即:

// Setup the Scroll View
UIScrollView *tempScrollView=(UIScrollView *)self.view;
tempScrollView.contentSize=CGSizeMake(320, 720);

// Set Stationary Background, so that while the user scroll the background is
// fixed.
UIImage *img = [UIImage imageNamed:@"bg-body.jpg"];
[tempScrollView setBackgroundColor:[UIColor colorWithPatternImage:img]];
然后,我进入ViewController.xib文件,在UIScrollView内部的UIView上,我将背景色设置为“Clear color”

我确信有一种方法可以在设置UIScrollView的背景的同时通过代码实现这一点,但至少可以通过IB实现


Jason

最简单的方法是在UIScrollView后面设置UIImageView(UIView下的UIImageView和UIScrollView),并将UIScrollView背景色设置为Janson提到的清晰颜色。通过这种方式,您可以使用UIScrollView滚动内容,而无需在后台滚动图像。

谢谢。它的效果比我以前的要好得多,但内容和图像都会一起滚动。是否仍要保持背景图像静止,只移动scrollview内容?