这是一个老问题,但也许你仍然想知道如何做到这一点。
我在 Stocks/Spotlight 中复制了一个 tableView。诀窍是
view.layer.cornerRadius = 10;
为此,您需要将 QuartzCore 包含到您调用该属性的类中:
#import <QuartzCore/QuartzCore.h>
我听说这仅适用于 OS 3.0。但由于我的应用程序使用的是核心数据,所以这不是问题,因为它已经适用于 OS 3.0 和高版本。
我用cornerRadius 10和
创建了一个自定义UIView
view.backgroundColor = [UIColor clearColor];
然后您必须在该子视图中放置一个 UITableView 分组样式。您需要将 backgroundColor 设置为 clearColor,将 separatorColor 设置为 clearColor。然后您必须将 tableview 定位在圆角视图内,这是通过设置框架大小和原点来完成的。我的自定义 UIView 的 loadView 类如下所示:
self.view = [[UIView alloc] init];
self.view.backgroundColor = [UIColor clearColor];
CustomUIViewClass *scherm = [[CustomUIViewClass alloc] init];
CGRect frame;
frame.origin.x = 10;
frame.origin.y = 50;
frame.size.width = 300;
frame.size.height = 380;
scherm.frame = frame;
scherm.clipsToBounds = YES;
scherm.layer.cornerRadius = 10;
[self.view addSubview:scherm];
CustomUITableViewClass *table = [[CustomUITableViewClass alloc] initWithStyle:UITableViewStyleGrouped];
frame.origin.y = -10;
frame.origin.x = -10;
frame.size.width = 320;
frame.size.height = 400;
table.tableView.frame = frame;
[scherm addSubview:table.tableView];
我希望你能理解我的英语,也许我会写一篇关于这种技术的简短博客文章,并附上一个示例项目,当我准备好时会在此处发布链接。