繁体   English   中英

NSDictionary-不复制值吗?

[英]NSDictionary - Don't Copy Values?

我正在尝试使用以下方法来管理场景中的一些动画:

  1. 在一个循环中,创建动画的UIImageView,设置on Stop方法。 另外,将此UIImageView存储在NSMutableDictionary中。 动画ID与字典中的键相同。

  2. 停止动画后,获取动画ID。 使用[animations objectForKey:animationID]获取imageview对象。 我从超级视图中删除imageview并释放它。 我还使用键从字典中删除了对象。

  3. 创建另一个动画对象,冲洗,然后重复。

问题是,当我根据键获取对象时,将返回NULL。 我认为这与字典的工作方式有关-它复制值而不是保留它们。 由于已复制,因此我实际上无法删除该对象。

如何使NSDictionary不复制这些对象(因此我拥有原始对象),或者在完成动画设置后如何释放这些动画对象并将其从超级视图中删除?

NSDictionary不复制对象(仅复制键)。 您返回NULL的唯一原因是如果您提供了错误的密钥,或者该对象已被删除。

从您的描述中尚不清楚100%清晰,但您似乎建议您“ 2. ...从字典中删除对象...”,然后再建议“ ...必须获取对象...”。 。 如果这是两个单独的活动,那么您肯定会在第二次访问中找不到该对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM