2013-05-11 106 views
2

我有一个非常大的图像,我想用作视图的背景图像。但是,我不想一次显示整个图像;我只想显示图像的一部分,然后我想动画显示它的其他部分,类似于游戏中的“无限背景”(在我的情况下,只有无限的背景))。 这样做的最好方法是什么?我是否需要将图片分成几部分,然后以不同方式将各部分之间的过渡动​​画化,还是有更好的方法?移动视图的背景

回答

0

我找到了解决方案。这段代码的神奇之处在于:

self.backgroundImageView = [[UIImageView alloc] initWithFrame: self.view.bounds]; 
self.backgroundImageView.image = [UIImage imageNamed:@"background.png"]; 
self.backgroundImageView.contentMode = UIViewContentModeBottomLeft; 
[self.view addSubview: self.backgroundImageView]; 

关键是将contentMode设置为UIViewContentModeBottomLeft。

2

UIScrollView作为背景视图怎么样?然后,您可以在该滚动视图内放置UIImageView,并根据需要控制滚动视图的contentOffset

+0

如果我使用UIScrollView并在其中添加UIImageView,图像将缩小到屏幕大小。图片尺寸为640 x 6298.我想要实现的是我只显示图像的底部(仅适用于屏幕),然后为其设置动画,以便图像从底部到顶部。我看不到如何在不修剪的情况下只显示图像的一部分。 – mobearette 2013-05-12 14:23:16

+0

如果您正确设置滚动视图(正确的'contentSize'和'scale'),图像将不会缩小。还要确保图像视图的大小是正确的('initWithImage:'应该完成这项工作)。 – ayoy 2013-05-12 17:32:09

+0

找到一个更简单的方法来做到这一点。请参阅下面的答案。但thx无论如何:) – mobearette 2013-05-12 18:13:10