ios - 如何在两个 View Controller 之间传递字符串或数据对象?

标签 ios iphone string path uinavigationcontroller

在我的上一个问题中,我问如何最好地将字符串从一个 View Controller 发送到另一个 View Controller ,这两个 View Controller 都位于导航堆栈上: Pass string from tableviewcontroller to viewcontroller in navigation stack

但是我刚刚意识到我可以将路径传递到应用程序文档文件夹中的文件,因为第一个( TableView )已经访问了文件中的数据,我应该将 View Controller 将数据传递给推送的 VC 吗? p>

最佳答案

传递引用比在 subview Controller 中重新初始化新对象的开销更少。

设置retain propertyNSString 实例的 subview Controller 中。

在父 View Controller 中,实例化 subview Controller 并将其字符串属性设置为等于您要传递给它的字符串:

childViewController.myStringProperty = parentViewControllerString;

随着字符串的 retain 计数增加,您不会重新创建该对象,而只是保留对其的引用。

如果您愿意,您可以保留一个 NSData 实例。与在子 vc 中重新创建它相比,这不会那么受欢迎。

关于ios - 如何在两个 View Controller 之间传递字符串或数据对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2899122/

相关文章:

ios - 视频不在启动画面上播放

iphone - View Controller 不会自动旋转到纵向倒置

ios - 无法接触我的 UIImageView - iOS

ios - 在 SpriteKit 中检测 Sprite 碰撞而不反弹

objective-c - 时间间隔计算问题

iphone - 为什么 NSString 保留计数为 2?

python - numpy fromstring 空字符串分隔符

javascript - 在整个字符串中随机分隔字符?

c++ - 字符串下标超出范围错误

ios - UILabel 即使在 dispatch_async 上也不会更新