Я хочу нарисовать линию (на iphone) так, чтобы я мог видеть каждый рисуемый пиксель.
В настоящее время я вызываю метод drawRect с использованием таймера.
Ниже приведен кодгде я рисую волну, используя значения из массива:
static int i=0;
int x = 10;
int y = 0;
int x2;
int y2;
- (void)drawRect:(CGRect)rect
{
// Drawing code.
CGContextRef c = UIGraphicsGetCurrentContext();
CGFloat black[4] = {0.0f,0.0f,0.0f,1.0f};
CGContextSetStrokeColor(c, black);
CGContextBeginPath(c);
NSLog(@"fired...");
int ecg[358] = {36, 37, 37, 36, 34, 33, 33, .... ,36}; //Assume the data is there
CGContextMoveToPoint(c, x, y);
x2 = i;
y2 = ecg[i];
CGContextAddLineToPoint(c, x2, y2);
x = x2;
y = y2;
CGContextStrokePath(c);
[self setNeedsDisplay];
i++;
}
- (void) awakeFromNib
{
NSTimer *timer;
timer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(drawRect:) userInfo:nil repeats:YES];
}
Я вижу только одну линию во время рисования, когда вызывается drawRect.Но я не вижу всего изображения.Я не могу придумать другой подход, чтобы увидеть, как волна рисуется на экране.
Также никогда не вызывается метод initWithFrame, поэтому пришлось объявить таймер awakeFromNib, исправьте меня, если я не прав.
Любые указатели для анимации рисования линии помогут.
Спасибо