2014-10-26 4 views
0

Я придумал такой сценарий, как рисование линейного графика с использованием метода DrawRect. Используя тот же код, я должен построить еще три типа линейных графиков. Как я должен очистить уже построенный график и нарисовать еще один ... Опубликовать один из методов drawRect класса. Посмотрите на это и предложите мне решение для этогоКак очистить вытяжку в Иосе?

- (void)drawRect:(CGRect)rect 
{ 
    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextClearRect(context, self.bounds); 
    CGContextSetAllowsAntialiasing(context, true); 

    CGRect currentBounds = self.bounds; 
    CGFloat dotsWidth = self.numberOfPages*kDotDiameter + MAX(0,  self.numberOfPages-1)*kDotSpacer; 
    CGFloat x = CGRectGetMidX(currentBounds)-dotsWidth/2; 
    CGFloat y = CGRectGetMidY(currentBounds)-kDotDiameter/2; 
    for (int i=0; i<_numberOfPages; i++) 
    { 
     CGRect circleRect = CGRectMake(x, y, kDotDiameter, kDotDiameter); 
     if (i == _currentPage) 
     { 
      CGContextSetFillColorWithColor(context, [UIColor orangeColor].CGColor); 
     } 
     else 
     { 
      CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor); 
     } 
     CGContextFillEllipseInRect(context, circleRect); 
     x += kDotDiameter + kDotSpacer; 
    } 
} 

ответ

1

Вы можете попробовать следующее: rect должен содержать границы линейного графика.

CGContextClearRect(UIGraphicsGetCurrentContext(), rect); 
+0

CGContextClearRect (UIGraphicsGetCurrenttext(), rect); did not work –

+0

Вы использовали его в методе drawRect? Пожалуйста, поделитесь своим кодом. – gabbler

+0

Есть несколько мест, где я использую метод drawrect. Каждый, где я использовал метод CGContextClearRect ... –

Смежные вопросы