【发布时间】:2015-06-09 13:02:53
【问题描述】:
我正在尝试创建一个包含多个图像的自定义视图。我通过以编程方式添加它们来做到这一点。问题是这些子视图相互重叠,我找不到改变它的方法。我能看到的唯一解决方案是以编程方式为每个新图像设置框架。如果有人能告诉我解决此问题的最佳方法是什么,我将不胜感激。
for (id image in self.images) {
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
[self.imageViews addObject:imageView];
[self addSubview:imageView];
}
【问题讨论】:
-
你想如何收集它们?喜欢一张图片中的几张图片还是你想喜欢 UICollectionView 的东西?
-
您需要为每个 UIImageView [定义一个框架][1] 或使用 [约束][2] 来布局它们。 [1]:stackoverflow.com/questions/19442142/… [2]:stackoverflow.com/questions/12826878/…
-
是的,正如@grhnkdlk 所说,你可以在 UICollectionView 中将它们显示为单元格。也许这是最好的方法。它提供了布局的所有灵活性,U 可以调整边距、图像数量、处理滑动等。但是,如果您需要一种简单的方法来将几个图像添加到自定义视图中,可能是几个图像,根据某些条件可能存在或不存在:1)设置框架并可能自动调整掩码(但准备好可能出现的问题)如果方向改变,则布局)2)或设置自动布局约束并且根本不使用框架
-
谢谢大家))
标签: ios objective-c subview addsubview