1

サブビューをメイン ビューに追加しようとしています。私のviewControllerからの関連コードは次のとおりです。

- (void)viewDidLoad {
    [super viewDidLoad];
    MyUIViewSubclass* myView = [[MyUIViewSubclass alloc] init]; 
    [self.view addSubview:myView]; // self.view is a simple UIView
    [myView setNeedsDisplay];
}

myView の drawRect は呼び出されません。

ただし、ViewController のメイン ビューとして MyUIViewSubclass を使用すると (Interface Builder で設定)、drawRect が呼び出されます。

サブビューで drawRect を呼び出すにはどうすればよいですか?

4

2 に答える 2

7

サブクラスでは、UIViewに指定されたイニシャライザーを使用する必要があります。

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) 
    {
       //Implementation code...
    }
}
于 2010-11-28T05:32:53.597 に答える
1

わかりました。サブビューのフレームを設定していませんでした。

于 2010-11-28T19:16:33.547 に答える