当我创建表视图时
myTableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, 320, 400) style:UITableViewStyleGrouped];
表格视图有圆角,但我想要直角(所以表格视图单元格应该看起来像矩形,但表格视图仍然应该有很多部分)。
问题是:如何创建具有许多截面和直角的表格视图?
当我创建表视图时
myTableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, 320, 400) style:UITableViewStyleGrouped];
表格视图有圆角,但我想要直角(所以表格视图单元格应该看起来像矩形,但表格视图仍然应该有很多部分)。
问题是:如何创建具有许多截面和直角的表格视图?
在 TableView 数据源中。在 cellForRowAtIndexPath 中,您可以将单元格的背景设置为空白...
cell.backgroundView = [[UIView alloc] initWithFrame:CGRectZero()];
然后你可以在单元格的后面放一个图像或矩形或任何东西。
你甚至可以创建一个新的 UIView 并把它放在 backgroundView 的位置。
然后你可以在里面放任何你想要的东西,图片,标签等等……它们会放在单元格内容的后面。
分组样式中单元格的圆角只是一个图像,因此可以由您替换。
将图像设置为单元格的背景图像,并赋予 to 的背景UITableView
颜色clearColor
并设置图像,如下所示..
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
///write your code..
UIImageView *img = [[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 45)] autorelease]; // set frame as your cell frame
img.image = [UIImage imageNamed:@"yourImageName"];
cell.backgroundView = img;
////write your code
}
对于部分,您可以编写一个委托方法,例如
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 1;//how many sections you want you can write a value after return type
}
我发现使角成直角的最佳方法是将背景视图设置为零,然后在其中放置一个视图。
[cell setBackgroundView:nil];
cell.backgroundView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];