2012-01-09 5 views
2

私はプロットを作成できます。しかし、プロットに1秒間隔でデータポイントを1つずつ与えたい場合は、毎回プロットを再描画する以外の方法で作業する方法がわかりません。 プロットにデータポイントを追加してUIViewをサブクラス化するには、どのような手法を適用する必要がありますか?UIViewのサブクラス化でdrawRectでプロットを更新するにはどうすればよいですか?

- (id)initWithFrame:(CGRect)frame { 

    self = [super initWithFrame:frame]; 
    if (self) { 
     // Initialization code. 
    } 
    return self; 
} 


- (void)drawRect:(CGRect)rect { 
    // Drawing code. 
} 

- (void)addSample: ??{ 
    ??? 
} 

あなたのプロットを想定すると、THX

答えて

1

はNSMutableArrayのように、可変コレクションでのデータ・セットを使用し、そのコレクションから、あなたの-drawRect:引っ張ることは、その後、あなたの-addSample:方法はただにそのデータポイントを追加する必要がありますそのコレクションを表示し、ビューの-setNeedsDisplayを呼び出します。 -drawRect:は、実行ループを通して次の反復で呼び出され、グラフが再描画されます。

+0

私は、プロット全体を再描画するのではなく、プロットに別のポイントを追加したいだけです。 ?? – Woof

+0

1秒に1回しか実行していない場合、全体を再描画するとパフォーマンスにはほとんど影響しません。通常、そのようなグラフは、スケールを調整するか古いデータポイントを削除するかにかかわらず、データセットの増加に応じて繰り返し描画する必要がありますが、ここでは何の問題もありませんか? –

+0

私はプロット制限を最初に設定します。私はプロットのサイズを変更したくありません。最終的にプロットには最大10,000ポイントがあります。 – Woof

関連する問題