Objective C:如何让UITableView的背景色保持一致

发布于 2024-11-08 19:37:14 字数 607 浏览 1 评论 0原文

我一直在尝试设置表格视图的背景颜色,但面临一个问题,

这就是我正在尝试做的事情。

//Set background color of table view (translucent)
self.tableView.backgroundColor = [UIColor colorWithRed:0.0 green:0.2 blue:0.5 alpha:0.7];

//Set frame for tableview
[self.tableView setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height-self.picker.frame.size.height)];

设置表格单元格后,我发现表格视图单元格周围的 alpha 级别不一致(参见下面的屏幕截图)

tableView BackgroundColor

是否有办法使背景的颜色/alpha 级别保持一致? (注意:我没有设置背景图像,只设置颜色和 Alpha 级别)

谢谢!

振和

I have been trying to set the background color of my table view but am facing an issue

This is what I am trying to do.

//Set background color of table view (translucent)
self.tableView.backgroundColor = [UIColor colorWithRed:0.0 green:0.2 blue:0.5 alpha:0.7];

//Set frame for tableview
[self.tableView setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height-self.picker.frame.size.height)];

After setting the table cells, I saw that there is an inconsistency in the alpha level around the table view cell (see screenshot below)

tableView BackgroundColor

Is there anyway to make the color / alpha level consistent for the background?
(Note: I am not setting a background image, only color and alpha level)

Thanks!

Zhen Hoe

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

甚是思念 2024-11-15 19:37:15

您需要使 UITableView 的背景清晰,并将 Opaque 设置为 FALSE

[self.tableView setBackgroundColor: [UIColor clearColor]];
[self.tableView setOpaque: NO];

You need to make the background of the UITableView clear as well as set Opaque to FALSE

[self.tableView setBackgroundColor: [UIColor clearColor]];
[self.tableView setOpaque: NO];
冷弦 2024-11-15 19:37:15

您需要做的只是两件事:

例如,视图中有一个表视图。
XIB 文件中将 UITableView 的背景设置为透明颜色。
将表视图的容器视图的背景设置为您想要的图像。

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"app_background.png"]];

如果 ViewController 实际上是 TableViewController ,则设置:

self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"app_background.png"]];

您可以在表视图委托(视图或表视图控制器)内部设置行背景

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {

if ([indexPath row] % 2 == 0) {//248 G:192 B:100


[cell setBackgroundColor: [UIColor redColor]];
} else {
   [cell setBackgroundColor: [UIColor colorWithPatternImage:[UIImage imageNamed:@"xyz.png"]]];

  }
}

All you need to do are 2 things:

E.g. A view has a table view in it.
In the XIB file set the background of the UITableView to clear color.
Set the background of the container view of the table view to the image you want.

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"app_background.png"]];

If the ViewController is actually a TableViewController then set:

self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"app_background.png"]];

You can set the row background with inside the table view delegate (the view or tableview controller)

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {

if ([indexPath row] % 2 == 0) {//248 G:192 B:100


[cell setBackgroundColor: [UIColor redColor]];
} else {
   [cell setBackgroundColor: [UIColor colorWithPatternImage:[UIImage imageNamed:@"xyz.png"]]];

  }
}
软的没边 2024-11-15 19:37:14

我最近自己遇到了这个问题,我认为我找到了解决方案

self.tableView.backgroundColor = [UIColor clearColor];
self.parentViewController.view.backgroundColor = [UIColor colorWithRed:0.0 green:0.2 blue:0.5 alpha:0.7];

,尝试一下,可能需要针对您的具体情况进行一些按摩(看起来您在半透明蓝色后面也有一些图片)。

I recently ran into this problem myself and think I found the solution

self.tableView.backgroundColor = [UIColor clearColor];
self.parentViewController.view.backgroundColor = [UIColor colorWithRed:0.0 green:0.2 blue:0.5 alpha:0.7];

Give that a shot, might need some massaging for your specific case (looks like you have some picture behind that translucent blue too).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文