ios - 视网膜显示中 UIView 位置变化

标签 ios objective-c frame autolayout autoresizingmask

我在 View Controller 中添加了一个名为 LayoutView 的 subview 。然后 LayoutView 通过给定的代码添加一个名为SectionView 的 subview :

MSSectionView *sec1;
            sec1 = [[MSSectionView alloc]initWithFrame:CGRectMake(72, 95,172,145)];

            sec1.tag = 1;
            sec1.delegate = self;
            //sec1.backgroundColor = [UIColor clearColor];
            //sec1.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleTopMargin;
            [self addSubview:sec1];

在我的普通 iPhone 中,它将显示为:

normal iphone

但是在我的视网膜显示屏中它将显示为:

enter image description here

我尝试过自动调整蒙版大小。但获得了相同的结果。 如何固定剖面 View 的位置?

最佳答案

我认为你的情况的问题在于框架的背景图像而不是 subview 。检查显示背景的 UIImageView 是否正在调整背景图像的大小。使用

计数器检查 subview 的框架
NSLog(@"Subview Frame = %@",NSStringFromCGRect(subview.frame)) 

检查视网膜和非视网膜的屏幕尺寸是否相同。即(两者都应该是 3.5 英寸,或者两者都应该是 4 英寸)。还可以在背景 ImageView 上应用自动调整大小

关于ios - 视网膜显示中 UIView 位置变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16293636/

相关文章:

jquery - 使用 jQuery 在 Frame 中获取元素

iphone - 使用仅包含在应用程序内拍摄的照片的UIImagePicker

ios - 导航 Controller 后标签栏出现黑屏

objective-c - 对核心数据中的特定部分进行排序

ios - Xcode:如何暂时隐藏 Issue Navigator 中的黄色警告

editor - sitecore 编辑框架 buttonRoot 未设置为编辑框架

ios - 存档时链接器命令失败

ios - 创建一张从一个 View Controller 传输到另一个 View Controller 的照片

ios - 使用附加参数初始化隐式解包选项?

ios - CALayer frame.size 不等于 bounds.size