可滚动且与 UITable 滚动同步的背景图像

Posted

技术标签:

【中文标题】可滚动且与 UITable 滚动同步的背景图像【英文标题】:Background image that's scrollable and in synch with the UITable scrolling 【发布时间】:2011-06-05 13:43:22 【问题描述】:

我已使用以下代码将图像添加到 UITableview。我想不通的是如何让背景图像随表格滚动(不是每个单元格中的图像,而是 UITable 后面的大图像)。我需要背景图像可滚动并与 UITable 滚动同步。

我已经搜索过,我看到的所有示例都只是添加了一个静态图像。

代码如下:

[self.view setBackgroundColor:
 [UIColor colorWithPatternImage:
  [UIImage imageWithContentsOfFile:
   [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:
    @"background.png"]]]];

感谢您的帮助。

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,但没有找到任何解决方案。我推出了我自己的,我解释得比这里容易给出的更详细。在UITableView that scrolls the background with dynamic content进行了解释

基本思路如下:

在具有动态单元格高度(或不是背景图案图像高度的倍数的高度)的表格视图后面创建第二个表格视图 将其 .userInteractionEnabled 属性设置为 NO(因此它不会接收触摸事件) 让它通过 KVO 监听“前”表视图的 contentOffset 属性,以便后台表视图将其 contentOffset 设置为相同的值。 让这个背景表视图成为它自己的委托(你必须创建一个子类才能实现 KVO 监听处理程序),它会填充空单元格的 contentView.backgroundColor = [UIColor colorWithPatternImage: ...] 确保您的“前”表视图单元格具有透明背景。即 backgroundView 设置为没有图像的 imageView 并且 opaque 设置为 NO,backgroundColor 设置为 clearColor。

对我来说工作得很好,而且看起来一点也不慢。在 iPod 4G 上,这些桌子仍然很漂亮

【讨论】:

【参考方案2】:

因为几天前我看到了-

http://www.appuicomponents.com/component/sbtv

我猜答案不是微不足道的。但也许您想尝试一下?

无论如何,如果您使用的是图案图像,是否可以将图案添加到它们自己的单元格中?

【讨论】:

该图像是一个大图像,将其添加到每个单独的单元格将不起作用。我去看看链接,谢谢 您可以尝试将图像分成 2 或 3 张图像,然后将其应用于单元格 - 第一个图像 --> 第一个单元格,第二个图像 --> 第二个单元格等......跨度> 我在想这可能是一个选择。不过我之前没有这样做过,所以我必须做一些搜索。谢谢。 这里有一个方法,以防其他人可能需要类似的东西:***.com/questions/5812261/…

以上是关于可滚动且与 UITable 滚动同步的背景图像的主要内容,如果未能解决你的问题,请参考以下文章

背景关联

ContentView (SwiftUI) 的背景图像不是子视图,但具有正确的滚动行为

css控制背景图像不随滚动条的滚动而滚动

Android在滚动时修复了滚动视图中的背景图像

如何使背景图像正确适合滚动视图?

滚动时背景ListView变黑