如何使用Xcode 8上的自动布局调整不同屏幕尺寸的对象?

时间:2016-11-06 12:20:36

标签: ios iphone swift3 xcode8

我需要在iPhone 4,iPhone 5,iPhone 6 / 6s,iPhone 6 Plus等不同的iPhone屏幕上使用简单的应用程序(见下图)。

app preview

视图控制器中有两个视图。顶视图(灰色区域),包含按钮和标签。底部视图(白色区域),包含10个图像视图,9个苹果和一个盘子。

是否可以使用自动布局根据屏幕尺寸按比例调整每个视图中的对象?

我只需要以纵向方式为iPhone屏幕执行此操作。

2 个答案:

答案 0 :(得分:0)

对于顶视图是一个好主意 - 使用UICollectionView。 一个数字 - 它是一个UICollectionViewCellUIImageView作为子视图。对于此单元格,您必须返回大小:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
    CGFloat size = CGRectGetWidth(collectionView.bounds)/5.0;
    return CGSizeMake(size, size);
}

因此,对于0 + 1 = ?相同的逻辑。希望这会对你有所帮助。

答案 1 :(得分:-1)

布局约束有"常数"和"乘数"。您可以将乘数用于您的目的