无法更新我的视图的子视图
Posted
技术标签:
【中文标题】无法更新我的视图的子视图【英文标题】:Unable to update my view's subview 【发布时间】:2015-08-14 17:53:38 【问题描述】:我正在使用具有滚动视图的容器视图,我正在将几个其他视图控制器的视图作为子视图添加到滚动视图。下面是作为子视图添加到滚动视图的代码。
for (int i = 0; i < tags.count; i++)
CGRect frame;
frame.origin.x = scrollView.frame.size.width * i;
frame.origin.y = 0;
RMKeyDetailViewController *det = [self.storyboard instantiateViewControllerWithIdentifier:@"RMKeyDetailViewController"];
[self addChildViewController:det];
frame.size = det.view.bounds.size;
det.view.frame = frame;
det.myTag = [tags objectAtIndex:i];
[scrollView addSubview:det.view];
[det didMoveToParentViewController:self];
pageControl.numberOfPages=tags.count;
CGFloat statusBarHeight = [[UIApplication sharedApplication] statusBarFrame].size.height;
CGFloat navbarheight = self.navigationController.navigationBar.frame.size.height;
CGFloat totHeight = statusBarHeight+navbarheight;
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * tags.count, scrollView.frame.size.height-totHeight);
现在,在 RMKeyDetailViewController 中,我使用 UIImagePickerController 来选择图像并更新 RMKeyDetailViewController 中的图像视图,如下所示,但选择的图像没有显示。
谁能建议我更好的方法来处理这种情况?
- (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
UIImage *image=[info objectForKey:UIImagePickerControllerOriginalImage];
firstThumbImageView.image=image;
【问题讨论】:
为什么要添加UIViewController
而不仅仅是子视图?
很容易处理每个屏幕实例的网络服务。所以,我想用 UIViewController 来单独管理每个视图。
你最终是如何解决这个问题的?
【参考方案1】:
当您将图像加载到名为 iv 的 UIImageView
中时,您必须将 iv 添加到您的视图层次结构中。
【讨论】:
"firstThumbImageView" 已经在视图层次结构中,给定的图像现在在其位置可见。 当我直接调用 RMKeyDetailViewController(不作为子视图添加到滚动视图中)时,一切正常。只有将 RMKeyDetailViewController 的视图添加为我的容器滚动视图的子视图时才会出现问题以上是关于无法更新我的视图的子视图的主要内容,如果未能解决你的问题,请参考以下文章