在我看来,我有一个scrollView作为子视图。 scrollView有另一个名为thePDFView的子视图。它用于显示PDF页面 此视图有2个子视图。 drawImage是从整个PDF视图上方的磁盘加载的图像 而paintView是完成所有绘画和标记的第二个子视图。 但是我只想在按下油漆按钮时添加paintView 这是有效的,但当我再次按下它以停止绘画模式并从superview中删除视图时,整个屏幕变为白色 我怎么能绕过它?
- (id)init
{
...
[self.view addSubview:theScrollView];
[theScrollView addSubview:thePDFView];
drawImage = [UIImage imageWithData:retrievedData];
[thePDFView addSubview:drawImage];
paintView = [[PaintViewController alloc] initWithImage:drawImage andPath:pageString];
}
- (void) togglePainting:(NSNotification *)notif {
if (!painting) {
theScrollView.scrollEnabled = false;
[thePDFView addSubview:paintView.view];
}
else {
theScrollView.scrollEnabled = true;
[thePDFView removeFromSuperview];
}
painting = !painting;
}
答案 0 :(得分:2)
[thePDFView removeFromSuperview];
删除滚动视图中的整个视图,只留下现在没有任何子视图的scrollview。因此你的观点是白色的。我想您只想删除paintView.view
,因此它应该是[paintView.view removeFromSuperview];