如何设置UITableView的背景(tableview样式为"Grouped")才能使用图像?

eba*_*unt 56 iphone

如何设置UITableView的背景(tableview样式为"Grouped")才能使用图像?

Sam*_*fes 155

在较新版本的SDK中,您需要设置tableView.backgroundView是否要透明,请尝试以下方法:

tableView.backgroundColor = [UIColor clearColor];
tableView.opaque = NO;
tableView.backgroundView = nil;
Run Code Online (Sandbox Code Playgroud)

  • 很高兴它有帮助:) (2认同)

lev*_*han 18

我们需要对这个简单的背景做点什么.我们将使用PNG图像并将其显示在UITableView后面.

  1. 准备PNG图像.它应该是320x460(如果您的应用程序中显示状态栏)或320x480(如果您隐藏它).
  2. 将其拖入XCode并进入Resources文件夹并添加到您的项目中
  3. 将包含UITableView的NIB文件加载到Interface Builder中
  4. 打开库(工具>库),切换到"媒体"选项卡,然后将图像拖到视图中,创建一个新的UIImageView.
  5. 使用检查器移动图像并调整其大小,使其位于X = 0,Y = 0,宽度= 320,高度= 480
  6. 将UIImageView放在UITableView后面(Layout> Send to Back)
  7. 保存,构建和开始!

令人失望的是,你将无法看到你的背景.UITableView的背景阻止我们看到UIImageView.您需要进行三项更改:

  1. 在Attributes Inspector中,确保未选中UITableView的"opaque"复选框!
  2. 将UITableView的背景颜色设置为透明:

    tableView.backgroundColor = [UIColor clearColor];

我希望这有助于解决您的问题.它对我有用,我还没有找到一种更优雅的方式来显示UITableView的背景图像.

与直接在UITableView上设置背景图像相比,我的解决方案的优势在于您可以缩进表格的内容.我经常想这样做只是在屏幕底部显示两个或三个表格单元格.


Lou*_*ges 12

[tableView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"whatever.png"]]];
Run Code Online (Sandbox Code Playgroud)

  • 有用.但在分组表中,单元格的边不透明.我已经尝试过设置backgroundView.opaque = NO,没有任何反应. (5认同)

Bha*_*thi 9

tableView.backgroundView = nil; 足够.无需将背景颜色设置为"清除颜色".


pix*_*x0r 2

一种方法是使表视图透明(将视图的背景设置为 0% 不透明度)并将 UIImageView 放置在 UITableView 后面。请记住,透明表格和表格单元格的性能不如不透明表格和表格单元格。