我在使用自定义UITableViewCell的drawRect方法时遇到了麻烦。这是我正在使用的代码
- (void)drawRect:(CGRect)rect
{
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGPoint origin = _faceView.frame.origin;
CGFloat width = _faceView.frame.size.width;
CGFloat height = _faceView.frame.size.height;
CGFloat border = 2.0f;
CGPoint startPt = CGPointMake(origin.x + width/2, self.frame.size.height);
CGContextBeginPath(ctx);
CGContextMoveToPoint(ctx, startPt.x, startPt.y);
CGPoint basePt = CGPointMake(startPt.x, origin.y - height - border);
CGContextAddLineToPoint(ctx, basePt.x, basePt.y);
CGRect circleRect = CGRectMake(origin.x - border, origin.y - border, width + 2 * border, height + 2 * border);
CGContextAddEllipseInRect(ctx, circleRect);
UIColor *color = [UIColor redColor];
CGContextSetFillColorWithColor(ctx, color.CGColor);
CGContextSetStrokeColorWithColor(ctx, color.CGColor);
CGContextSetLineWidth(ctx, 1.0f);
CGContextDrawPath(ctx, kCGPathFillStroke);
}
我已经调试过以确保所有数值都有意义并且看起来确实如此。无法真正找出为什么屏幕上没有任何内容。
对于它的价值,这也是一个在笔尖中定义的单元格。我正在构建iOS 7 sdk。
有什么想法吗?
tahnks
答案 0 :(得分:15)
尝试将backgroungcolor属性设置为透明色
self.backgroundColor = [UIColor clearColor]
答案 1 :(得分:9)
你可能不应该在UITableViewCell自己的drawRect中这样做。而是创建一个自定义UIView并将其添加为子视图。
另见this answer。
答案 2 :(得分:3)
你必须设置
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
.....
[cell setNeedsDisplay];
return cell;
}
答案 3 :(得分:-2)
尝试设置@echo off
:B
echo Enter password:
set /p password=
if "%password%" == "Password WithASpace" goto :A
if not "%password%" == "Password WithASpace" goto :C
:C
echo Incorrect password
cls
goto :B
:A
echo Correct password, unlocking secret FBI database.
pause
属性的backgroundColor
以清除颜色
contentView