我有一个 UIScrollView 的子类,我已将其设置为我的 UIViewController 的视图。我想要一个全屏背景图像,当我滚动整个 UIScrollView 时,我总是可以看到它。我怎样才能做到这一点?请不要告诉我在 UIImageView 前面有 UIScrollView。试图找到替代方案。现在我有一个 UIImageView 作为 UIScrollView 的子视图,但是当我向下滚动到底部时,图像不再显示。
问问题
1397 次
4 回答
1
您可以通过以下方式创建层次结构以节省额外的视图。
视图控制器
视图(图像视图)
- 滚动视图
于 2012-06-08T02:06:48.923 回答
0
在 ViewController 的 UIView 中放置两个视图。第一个是带有您想要的背景图像的 UIImageView,第二个是 UIScrollView(具有清晰的背景颜色,因此您可以通过滚动视图看到 UIImageView 的内容(即背景图像))。在故事板或 IB 中,它的结构如下:
- 视图控制器
- 看法
- 图像视图
- 滚动视图
- 看法
于 2012-06-08T01:44:06.560 回答
0
将您的 UIScrollView 从作为控制器的主视图中删除。
相反,使用 UIView 并将 imageView 添加到视图的顶部,并在其上方添加滚动视图。您的布局应如下所示:
- UIViewController
- 根视图
- 图像视图
- 滚动视图
- 根视图
现在您的视图已正确分层以保持图像静态和其上方的滚动视图
希望这可以帮助 !
于 2012-06-08T01:47:27.873 回答
0
覆盖 UIScrollView 子类中的布局子视图:
- (void)layoutSubviews
{
CGRect frame = self.imageView.frame;
frame.origin.y = self.contentOffset.y;
self.imageView.frame = frame;
}
如果需要,也可以对 x 进行调整。
于 2012-06-08T03:39:10.730 回答