を使用して ViewController 内にビューを追加しました[self.view addSubview:newView]
。newView は UIView タイプのオブジェクトです。newView 内に、 を使用していくつかのビューを追加しました[self addSubview:polyg];
。
Polygs
からも継承しUIView
ます。しかし、彼らは決して引き寄せられません。drawRect:(CGRect)rect
呼び出されることはありません。
私はiOSが初めてで、何が間違っているのかわかりません。
self.view
ビューを newView に追加するときに使用しなかったことが関係していると思われます。self.view
newView 内でも使用できません。
どうすればこれを機能させることができますか?
編集: これらの polyg オブジェクトを作成するとき、initWithFrame を使用し、次のように newView のフレームを送信しています:[[Polyg alloc] initWithFrame:self.frame];
これが原因でしょうか? Polyg は移動可能でサイズ変更可能なポリゴンになるので、それぞれが画面全体に描画できるはずだと考えました。
編集: 画面に指を触れるたびに viewController から呼び出される touchX:Y というメソッドを newView 内に作成しました。中に私はこれを書きました: NSLog(@"subview = %i", self.subviews.count);. 画面に触れるたびに、コンソールに次のように表示されます:subview = 89なので、サブビューがnewViewに追加されたと確信しています。
これを同じ touchX:Y メソッドに追加してみました:
for (UIView* subview in self.subviews) {
[subview setNeedsDisplay];
}
ただし、サブビューの drawRect は呼び出されません。