Bit*_*ise 3 drawing objective-c uitableview ios
我试图用一些部分用颜色填充的行来实现一个表.从本质上讲,我希望功能能够将我UITableViewCell
的背景颜色填充到一定的百分比.
下面是UITableViewCells
我想要创建的类型的图像.在图像中,您可以看到第一行是完全填充的,第二行是大约75%,第三行是大约20%,依此类推......
我在这个方法上做了一些修改但没有成功:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)
我试过了什么?我尝试将子视图添加到每个单元格的内容视图中.子视图将是一种背景颜色,而实际的细胞将是清晰的颜色.以下是我尝试创建75%填充的单元格的代码段:
cell.backgroundColor = [UIColor clearColor];
int fillWidth = (75/100) * cell.frame.size.width;
CGRect rect = CGRectMake(0, 0, fillWidth, cell.frame.size.height);
UIView * view = [[UIView alloc] initWithFrame:rect];
view.backgroundColor = [UIColor purpleColor];
[cell.contentView addSubview:view];
//...
return cell;
Run Code Online (Sandbox Code Playgroud)
不幸的是,这似乎没有对细胞的渲染方式做出任何改变.
如何为每个表格行实现部分着色效果(如上图所示)?
我认为你正在划分2个整数并期望加倍,基本上答案就是0.尝试使用75.0/100.0
另一件我忘了提到的事情,cgrect所期望的变量类型是CGFloat,你使用的是int,所以你也必须修复它
CGFloat fillWidth = (75.0/100.0) * cell.frame.size.width;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
553 次 |
最近记录: |