2016-01-13 43 views
0

我以编程方式创建UIView并将其命名为UIView captureImage。这UIView captureImage显示我从相机捕获的图像和我称之为self.frameForCapture的parentView。但问题是,它总是与添加到故事板的UIView重叠。发送编程UIView以反击在故事板中添加的UIView

更新发布:

这是我想要在我的应用程序中的图像。 enter image description here

黑视图是我的父视图,我称之为self.frameForCapture。 蓝色视图是childView,我使用故事板添加它。 红色视图是childView,我以编程方式添加到父视图。 但我把它添加到redView的时间。它总是与blueView重叠,我使用这个addSubView:。 但如果我用这些

[self.frameForCapture bringSubviewToFront:captureImage]; 
[self.frameForCapture sendSubviewToBack:captureImage]; 

没有发生。 我用这个代码:

self.newalbumImageView.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height); 
[self.newalbumImageView setContentMode:UIViewContentModeScaleAspectFill]; 
self.newalbumImageView.image = self.albumImage; 
UIView * captureImage = [[UIView alloc] initWithFrame:self.frameForCapture.frame]; 
[captureImage addSubview:self.newalbumImageView]; 
[self.frameForCapture addSubview:captureImage]; 
+0

这是可能的,但你需要使你的视图层次更清晰。这并没有提供足够的信息,确切地说出了什么问题。 –

+0

对不起,我会更新我的帖子。 – user3818576

+0

你确定'captureImage'是'frameForCapture'的子元素吗?你也说过“他们有相同的父视图。” – zcui93

回答

1

有几件事情,可以帮你看一下这个问题How to make a UIView always appear at the front? 只是链接到headerview .h文件中,并使用myAlwaysOnTopView.layer.zPosition = MAXFLOAT; 另一件事是,当你使用[self.frameForCapture sendSubviewToBack:captureImage]; 的redview仍然会在self.frameForCapture之上,如果你不想这样,你可以隐藏它,甚至删除 如果你仍然有这个问题,只是标记我

+0

谢谢。我从来不知道有这样的代码。 – user3818576