我想在屏幕上显示一个新视图。在显示它之前,我想用一个刚被相机捕获的图像初始化它。 这是代码的一部分:
[self.view addSubview:self.photoPreviewView.view];
UIImageView *photo = self.photoPreviewView.imageView;
[[self captureManager] captureStillImage:photo];
您可以注意到,我首先调用addSubView,然后才设置照片。我这样做是因为“imageView”(“photoPreviewView.imageView”)只有在调用“addSubView”后才能访问。
这会产生一种不太好的体验,首先视图以白色显示,然后才会显示照片。
有没有办法处理这个问题?
答案 0 :(得分:1)
不确定理解你的问题,但是,
你可以在你的代码之前试试这个:
[self.photoPreviewView.view addSubview:nil];
也许它允许您访问imageView
的{{1}}属性。
让我知道它是否有效。
答案 1 :(得分:1)
信息不够 - 如果photoPreviewView是通过加载创建的 从NIB文件和imageView是一个IBOutlet然后链接不是 为imageView建立,直到您访问了photoPreviewView的view属性。
如果是这种情况,只需做一个
[self.photoPreviewView view];
[[self.captureManager captureStillImage:self.photoPreviewView.imageView];
[self.view add subView;self.photoPreviewView.view];