0

私のアプリの側面の1つは、円グラフを描くことです。したがって、ユーザーがボタンをタップすると、作成したpieDrawingクラスを開始します。

mPieClass=[[PieClass alloc]initWithFrame:CGRectMake(10+PosX, 10, 320, 230)];

次に、クラス変数、半径、色、値などにいくつかのデータを入力し(クラス自体がいくつかのラベルを作成します)、それをサブビューとして追加します。

[self.view addSubview:mPieClass];

これまでのところ良好で、パイは元気に表示されています。iPadの向きを変更したため、再描画して別の場所に配置する必要があります。

私の質問は、それをどのように行うべきかということです。現在、描画/作成メソッドを再度呼び出すと、別の場所に別の円が描画されますが、前の円はまだ表示されています。電話したら

 mPieClass=[[PieClass alloc]initWithFrame:CGRectMake(10+PosX, 10, 320, 230)];

PosXの新しい値を使用して別の場所に再描画しますが、古いパイはまだそこにあります。古いパイをクリアするためにdeallocまたは何かが必要ですか?

詳細が必要な場合はお知らせください。ありがとう

4

1 に答える 1

0

UIViewドキュメントから:

フレームは、スーパービューの座標系でビューの原点と寸法を定義し、レイアウト中にビューのサイズまたは位置を調整するために一般的に使用されます。

ビューを新しい位置に配置するには、新しいフレームを割り当てます。

mPieClass.frame = CGRectMake(newX, newY, newWidth, newHeight);
于 2012-07-26T19:19:23.767 に答える