UITableViewCells неверный контекст пытается нарисовать - PullRequest
1 голос
/ 05 апреля 2011

Я пытаюсь нарисовать треугольник флажка в UITableViewCell.В методе протокола источника данных -tableView: cellForRowAtIndexPath: я добавил следующее в блок кода, который спрашивает, является ли ячейка нулем:

    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextBeginPath(context);
    CGContextMoveToPoint(context, 75,10);
    CGContextAddLineToPoint(context, 10, 150);
    CGContextAddLineToPoint(context, 160, 150);
    CGContextClosePath(context);
    [[UIColor blackColor] setStroke];
    CGContextStrokePath(context);

При выполнении кода я получаю серию «недопустимый контекст0x0 'сообщения о следующих методах: CGContextBeginPath: CGContextMoveToPoint: CGContextAddLineToPoint: (дважды) CGContextClosePath: CGContextSetStrokeColorWithColor: CGContextDrawPath

* *1005* в каждой таблице 1006 *

в каждом ряду.рисовать треугольники или другие геометрические фигуры внутри объектов customUITableViewCell?

1 Ответ

1 голос
/ 05 апреля 2011

UIGraphicsGetCurrentContext() не вернет действительный контекст, если вызывается за пределами drawRect:. Вы должны сделать свой собственный рисунок в методе drawRect: вида. Для вашей цели вам, вероятно, следует создать собственный подкласс UIView для вашего флажка и добавить это представление в качестве подпредставления в ячейку.

...