iphone 小注意
由于iphone/ipad的内存都不是很大,当程序过多时,很经常会内存不足。那么程序就会接收个信息receiveMemoryWarning,然后系统就会把一些暂时没用的资源release
在多个view之间传参,特别是view是以栈的形式保存的,就会在receiveMemoryWarning后遇到无法预料的问题
看下面一种情况
在一个navigation stack中先后有三个view, A, B, C,它们之间传递着一个参数,而且每个view都需要那个参数。
假如用户一直push view,直到当前view是view C。这个时候,如果程序receiveMemoryWarning,那么view B,C的数据将会被release。然后,用户再返回view B,那么就会因为 id B是一个空值而产生无法预料的错误。所以,我觉得,在多个view之间传递参数时,一般只在两个view之间传递,不要经过其它中间view。应尽量避免两个以上的view传递同一参数。或者使用delegate