gpt4 book ai didi

ios - 对对象的类方法实例上的运行方法的困惑

转载 作者:行者123 更新时间:2023-12-01 17:32:42 24 4
gpt4 key购买 nike

因此,我对自己的数据去向和存储在应用程序中的位置感到困惑。这不是一个具体的问题,因此希望有人可以提供一个广义的答案。

我需要在几个UIViewController实例之间传递一些数据,而我目前正在使用名为我的dataManager的单例对象来进行此操作。此类有一个方法,一个称为+ (LCDataManager *) sharedDataManager的类方法,该方法基本上检查sharedDataManager是否已经存在,如果存在,则返回它,如果不存在,则创建它并设置其变量。这意味着我可以在任何我喜欢的地方引用该类,在我喜欢的任何地方从多个类访问和修改其变量。

第一个问题:这是像这样传递数据的正确/最佳/最合适的方法吗?我希望它服从MVC,感觉确实如此,我希望我是对的。

第二个问题:如果我想在该类中放置一个实例方法,并从该类方法中调用它,该怎么办?假设我的sharedDataManager需要调用一个方法来获取其变量之一(数组)中的某些对象,然后将它们放入另一个数组中,然后再次将其发送出去。我做不到,可以吗?这是怎么回事?如果我创建了该类的实例(而不是使用共享实例),那么我将失去跨多个viewController使用该实例的能力。

我很糊涂,看来这不是我要解决的问题。欣赏任何指导,最好不要阅读“阅读Apple文档”一词-他们写的好像您已经知道自己在做什么,坦率地说我还没有。

最佳答案

第一个问题:这是像这样传递数据的正确/最佳/最合适的方法吗?我希望它服从MVC,感觉确实如此,我希望我是对的。

您的设计完全符合MVC。

第二个问题:如果我想在该类中放置一个实例方法,并从该类方法中调用它,该怎么办?

您当然可以定义一个实例方法并按如下方式调用它:

[[MyModelClass sharedModel] myInstanceMethod];

实际上, [MyModelClass sharedModel]将为您提供 MyModelClass的实例(应该保证它是唯一的,因为它是单例的)。

如果要从 sharedModel类方法调用实例方法,则也可以这样做,因为 sharedModel拥有对单例的引用,因此可以向其发送消息。

关于ios - 对对象的类方法实例上的运行方法的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15005600/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com