iOS:在接触发生时转移UIView的所有权?

iOS:在接触发生时转移UIView的所有权?,第1张

概述我收到touchesBegan的那一刻,我想删除触摸的视图和addSuperview到新的父视图,然后继续接收触摸.但是我发现有时这不起作用.具体来说,从不调用touchesMoved和touchesEnded. 有没有一个技巧使这项工作正确?这用于实现拖放行为,其中视图最初位于滚动视图内. 谢谢. 代替: [transferView removeFromSuperView];[newParen 我收到touchesBegan的那一刻,我想删除触摸的视图和addSupervIEw到新的父视图,然后继续接收触摸.但是我发现有时这不起作用.具体来说,从不调用touchesMoved和touchesEnded.

有没有一个技巧使这项工作正确?这用于实现拖放行为,其中视图最初位于滚动视图内.

谢谢.

解决方法 代替:
[transferVIEw removeFromSuperVIEw];[newParentVIEw addSubvIEw:transferVIEw];

仅限使用:

[newParentVIEw addSubvIEw:transferVIEw];

在文档中,声明“视图只能有一个超级视图.如果视图已经有超视图,并且该视图不是接收者,则此方法会在将接收器作为新的超级视图之前删除先前的超视图.”

因此,不需要使用removeFromSuperVIEw,因为它由addSubvIEw处理.我注意到removeFromSuperVIEw结束任何当前的触摸而不调用touchesEnded.如果仅使用addSubvIEw,则不会中断触摸.

总结

以上是内存溢出为你收集整理的iOS:在接触发生时转移UIView的所有权?全部内容,希望文章能够帮你解决iOS:在接触发生时转移UIView的所有权?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1100661.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存