gpt4 book ai didi

Xcode 通过 X-Cord 对 UIImages 数组进行排序

转载 作者:行者123 更新时间:2023-12-01 12:40:32 25 4
gpt4 key购买 nike

我有一个 UIImageView 数组:

NSMutableArray *imagesArray = [[NSMutableArray alloc] init];
[imagesArray addObject:smallBox];
[imagesArray addObject:medBox];
[imagesArray addObject:largeBox];
[imagesArray addObject:xlBox];

这些框正在屏幕上移动。我希望对数组进行排序,以便屏幕左侧的任何框(x 位置)都位于数组的第一个位置等。如果我知道如何访问属性,我想我就能弄清楚数组中的图像。我尝试使用像 imagesArray[0].frame.origin.x 这样的代码;但这是行不通的。任何帮助将不胜感激。

最佳答案

我会这样做:

NSSortDescriptor *desc = [NSSortDescriptor sortDescriptorWithKey:@"frame.origin.x" ascending:YES];
[imagesArray sortUsingDescriptors:@[desc]];

假设数组中的所有对象都是 View ——确保 smallBox , medBox等都是 UIImageView 的实例而不是 UIImage .另外,请注意,为了 ImageView 的 x协调以按照您希望的方式排序,它们应该都是同一父 View 的 subview 。如果不是,则说明您不是在将苹果与苹果进行比较。如果 View 不是同一 View 的所有 subview ,则需要编写一个比较器来首先转换 View 的 frame。比较之前的屏幕坐标。

你的表达式 ( imagesArray[0].frame.origin.x ) 应该给你 x imagesArray[0] 处的 View 坐标,如果没有,了解失败的方式/原因会很有帮助。

关于Xcode 通过 X-Cord 对 UIImages 数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13420819/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com