我试图设立一个NSinvocation上传照片的网站。我这样做:

  1. 设立nsinvocation对象
  2. 增加一个UIImage*到nsinvocation目作为一个参数,以及一些其他的论点
  3. 援引nsinvocation在需要的时候
  4. 功能称为当我援引nsinvocation不能访问UIImage-我得到NSInvalidArgumentException.

后挖一个小小的同时,它看起来像如果我补充一UIImage作为一个参数我NSInvocation目的,然后试图让它回来...我是返回的一个不同记忆的地址!这正常吗?

//首先我有一个有效的UIImage"imgHolder"其中有一个存储地址"的"...

NSInvocation*myInvocation=[NSInvocation invocationWithMethodSignature:...

[myInvocation setArgument:imgHolder atIndex:5];

//现在,奇怪的一部分...

UIImage*checkImg;

[myInvocation getArgument:&checkImg atIndex:12];

//checkImg具有记忆的地址"B"!

如果我尝试向工作与checkImg,我得到的各种例外,它使我相信这不是一个有效的UIImage.

任何想法什么?不应该存储地址的checkImg相同的imgHolder?

有帮助吗?

解决方案

[myInvocation setArgument:imgHolder atIndex:5];

如果imgHolder是UIImage*,你应该通过&imgHolder,不imgHolder.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top