UITableView组样式上的黑角

时间:2009-10-13 01:47:13

标签: iphone cocoa-touch iphone-sdk-3.1

我有一个问题,我的UITableView(组样式)在它的圆角上方有一个黑色“尖端”。

我正在设置tableview的背景:

[meetingTableView setBackgroundColor:[[UIColor alloc] initWithPatternImage:[[UIImage alloc] initWithContentsOfFile:@"background.png"]]];

我的桌面视图最终看起来像这样:

black pointy edge on rounded corner http://papernapkin.org/pastebin/resource/images/imageEntryId/6487

我有什么想法可以摆脱那些黑点?

9 个答案:

答案 0 :(得分:54)

我遇到了同样的问题。 当我用xib设置清晰的颜色时,我有后角 解决方案是通过代码设置它!

(对于webview存在相同的界面构建器问题)

答案 1 :(得分:16)

在控制器的viewDidLoad方法中尝试此操作:

meetingTableView.backgroundColor = [UIColor clearColor];

答案 2 :(得分:3)

万一你还没知道,there's another neat technique你可以用来为UITableViews制作自定义背景:

不像设置背景那么简单,但它为您提供了更大的灵活性,可以扩展到任何表格大小。

答案 3 :(得分:3)

如果您在XIB中设置背景颜色以清除颜色,您将在UITableView组样式上获得黑角。

请尝试使用此代码删除UITableView组样式上的黑角

tableViewObject.backgroundColor=[UIColor clearColor];

答案 4 :(得分:2)

也许你放yourTableViewOutlet.backgroundView=nil;

答案 5 :(得分:1)

要避免黑角,您必须确保UITableViewCells不是不透明的。看起来您正在使用自定义样式表格单元格,而opaque的默认值为YES。如果在XIB文件中设置了表格单元格,请转到Interface Builder并取消选中opaque复选框。或使用setOpaque:NO setter更改值。

因为表格单元格视图仍然具有矩形框架,即使是圆角,单元格视图也不是实际的表格视图会导致这些黑角。

答案 6 :(得分:0)

我的猜测是,它与您在自定义表格视图单元格中执行的操作有关。您可能希望尝试将单元格背景颜色设置为[UIColor clearColor]

答案 7 :(得分:0)

我认为您应该将表格的背景颜色设置为clearColor,并使用背景图像初始化您的视图。

然后肯定不会显示黑角。但也不要忘记将单元格的背景颜色设置为白色

答案 8 :(得分:0)

如果你像我一样并且从不使用UITableViewController,而是将UITableView放在UIViewController中,那么上面的上面提到的答案(将tableView的背景设置为[UIColor clearColor])可能不适合你。

在这种情况下,不是tableView需要具有清晰的背景,而是包含tableview的视图。

这不直观,但对我有用。在界面构建器中,您可以将父视图的背景颜色设置为清除颜色,或者您可以在viewDidLoad中的代码中执行相同的操作:

self.view.backgroundColor = [UIColor clearColor];

我猜测黑角的原因是内部图形优化,并设置背景清晰修复它。