gpt4 book ai didi

iOS 转换点 :fromView

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:14:29 28 4
gpt4 key购买 nike

我在 UIView 的子类中有以下代码片段:

- (FolderWithAttachedLabel *) findFolderContainingPoint: (CGPoint) pointInWindowView
{
BOOL endOuterLoop = NO;
for (UIScrollView *scroller in visibleScrollViews)
{
for (FolderWithAttachedLabel *subfolder in expandedSubfolderLists)
{
CGPoint point = [subfolder convertPoint:pointInWindowView fromView:nil];
if (CGRectContainsPoint(subfolder.bounds, point))
{
[subfolder removeFromSuperview];
return subfolder;
}
}
if (endOuterLoop)
break;
}
return nil;
}

我正在尝试做的是查看 UIScrollView 中包含的文件夹列表,以找到用户试图拖动的文件夹。 FolderWithAttachedLabelUIView 的子类。在调试器中,subfolder 看起来是一个有效的实例。

第一次通过内循环,行:

CGPoint point = [subfolder convertPoint:pointInWindowView fromView:nil];

抛出以下异常:

* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM convertPoint:fromView:]: unrecognized selector sent to instance 0xa329890

因为 subfolder 是一个 UIView 子类,我认为 convertPoint:fromView: 应该是一个很好的选择器,但我显然遗漏了什么。

这里有什么建议吗?

TIA

最佳答案

看起来子文件夹实际上是一个NSArray。我建议查看 expandedSubfolderLists 是如何填充的。

以后可以在报错的“原因”中看到:

reason: '-[__NSArrayM convertPoint:fromView:]

__NSArrayMNSArray 类簇的一部分。

关于iOS 转换点 :fromView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16044469/

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