2010-12-29 6 views
0

私は2次元配列を持つ私のカスタムUIViewを持っています。この配列には、drawRectメソッドを使用してカスタムUIViewで描画するピクセルが含まれています。UIViewでアニメーションを作成する方法は?

ここでは、このピクセル(私の2次元配列)を100ステップ(または結果配列のみ)に変更します。このエフェクトをアニメーションにするにはどうすればよいですか?以前の状態と実際の状態を表示するのは問題ありませんが、私はこの状態の間でアニメーションが必要です。

ありがとうございました。

敬具、 Wojtekさん

[UPDATE、同じ日、14時15分]

今の私は、次の方法でそれをやった:

- (void)calculate:(NSTimer *)timer { 

int result = [myView calc]; 
if(result > 0) 
{ 
    [NSTimer scheduledTimerWithTimeInterval:0.00001f 
            target:self selector:@selector(calculate:) 
            userInfo:nil 
            repeats:NO]; 
} 
[myView setNeedsDisplay];} 

が、それはあまりよくないです爽やかにすると非常に遅くなるからです。私が2〜4回の計算をすべてリフレッシュすると、私のアニメーションはスムーズではありません。

MY描画方法:充填RECTと一度に1つの画素を描画

- (void)drawRect:(CGRect)rect{ 
int i = 0, j = 0; 

CGContextRef myContext = UIGraphicsGetCurrentContext(); 


// ****************** drawing ******************** 
for(i = 0; i < 768; i++) 
{ 
    for(j = 0; j < 768; j++) 
    { 
     if(board[i][j] == 1) 
     { 
      CGContextSetRGBFillColor (myContext, 1, 0, 0, 1); 
      CGContextFillRect (myContext, CGRectMake (i, j, 1, 1)); 
     } 
     else 
     { 
      CGContextSetRGBFillColor (myContext, 0, 0, 1, 1); 
      CGContextFillRect (myContext, CGRectMake (i, j, 1, 1)); 
     } 
    } 
} 

}

答えて