我有一个子视图,有各种方法来更新我的数据,然后调用[self setNeedsDisplay];调用drawRect来更新视图。
如果我从viewController调用其中一个方法,则数据会更新,但不会调用drawRect。
将subView添加为viewController的属性:
@property (nonatomic,retain) MyView *myView;
并在viewController中启动:
@synthesize myView;
- (void)viewDidLoad {
[super viewDidLoad];
myView = [[MyView alloc] init];
}
我稍后在带有[myView exampleMethod];
如何确保从viewController调用的方法重绘subView?
答案 0 :(得分:1)
你不必打电话
[self.view setNeedsDisplay];
:)
视图控制器中的默认视图仅称为“视图”,如果您想创建自己的视图,则必须将其添加到该视图或使用该视图交换视图,如下所示:
self.view = myView;
//or
[self.view addSubview:myView];