针对不同的屏幕尺寸构建自适应布局

时间:2018-07-05 19:21:11

标签: ios autolayout adaptive-layout

我一直在下面使用此辅助方法来了解屏幕的一般尺寸。假设我在顶部有一个标题,在其下方垂直对齐的是3个标签(每个标签下方有25像素图像)。为了确保3个标签在标题和按钮之间均匀分布。我检查方法是否返回“ isLarge”,是否重新运行为“否”,如果可以,我将标签的约束最小化,以使其更靠近中心标签(因为中心标签在水平方向上居中),因此它们不与顶部标题和底部按钮重叠。一定有更好的方法。

- (BOOL)isLargeDevice {
    struct utsname systemInfo;
    uname(&systemInfo);
    NSString *deviceType = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
    NSArray *largeDevices = [NSArray arrayWithObjects: @"iPhone9,2", @"iPhone9,4", @"iPhone10,1",@"iPhone10,4",@"iPhone10,2",@"iPhone10,5",@"iPhone10,3", @"iPhone10,6", nil];
    for (NSString *deviceString in largeDevices) {
        if ([deviceType isEqualToString:deviceString]) {
            return YES;
        }
    }
    return NO;
}

0 个答案:

没有答案