[英]iOS Bring Subview To Front not working on UIImageView
我知道我应该能够做到这一点:
[self.view bringSubviewToFront:myImageView];
并且它应该将图像视图置于最前面。 myImageView已设置在情节提要中,并使用@property和@synthesize链接到代码。 我可以进行其他操作(通过动画加载图像并按比例放大),但似乎无法使视图占据最上方的视图。 因此,当动画结束时,就会与另一个图像视图重叠。
它所属的视图是模态呈现的视图控制器。 在iPhone或iPad表单上。 两者都不起作用。 同时运行iAd。
当我这样做时,我也感到奇怪:
NSLog(@"number of subviews %d", self.view.subviews.count);
我得到的结果是1。
有什么建议么? 我以前在其他应用程序中使用过这种方法,并且可以正常工作,但是我的搜索表明我做得对。 那么,我在哪里出错了? 我认为这一定与没有正确的self.view有关,但不知道为什么会这样。
根据要求提供的进一步代码:
[self.view bringSubviewToFront:myImageView];
[UIView animateWithDuration:0.35 delay:0 options:0 animations:^{
//save previous frame
prevFrame = myImageView.frame;
float width = [[UIScreen mainScreen] bounds].size.width;
float height = [[UIScreen mainScreen] bounds].size.height;
// Need to create a 320x320 centred square
float originX = (width - 320)/2;
float originY = (height -320)/2;
CGRect newFrame = CGRectMake( originX, originY, 320, 320);
[myImageView setFrame:newFrame];
}completion:^(BOOL finished){
}];
因此,您会看到大多数代码只是关于图像的动画,以将其扩展到显示的中心。 但是我能够按您期望的方式处理图像,但是它没有响应将消息带到视图前面的消息。 通常这是self.view带上SubSubviewToFront,这将工作,但我认为该消息将以错误的观点,我不知道为什么吗?
如果彼此有2张图片,请使用
[imageView setHidden:YES];
隐藏它并
[imageView setHidden:No];
展示它
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.