将 Class 结果放入第二个 viewController

Posted

技术标签:

【中文标题】将 Class 结果放入第二个 viewController【英文标题】:Put Class results in a second viewController 【发布时间】:2014-07-22 10:49:27 【问题描述】:

我有一个 UIViewController,我在其中导入了一个类:

#import "differenza.h"

然后我在按下按钮时创建了该类的实例:

- (IBAction)ok:(id)sender 

    differenza *classeDifferenza;
    classeDifferenza = [[differenza alloc] init];

    [classeDifferenza metodo];    


如您所见,我还调用了一个方法....现在我在 UIViewController 中没有足够的空间来显示该方法的结果,所以我需要一个新的 ViewController 来显示所有结果...但是我不知道如何从那个新的 ViewController 中调用结果,因为我不能使用

classeDifferenza.variabile 

方式....

这是我还没有真正得到的东西。过去我使用(感谢您的帮助:Setting up class instances in a multi view app (Objective C))一个“公共类”来存储所有数据和所有方法......但我不认为这总是正确的方法......我觉得我是滥用该解决方案......或者这是我描述的正确方法?

谢谢!

【问题讨论】:

我会将differenza 对象设为实例变量,并使用委托从新视图控制器回调以检索调用metodo 的结果。 这与您在底部提到的问题完全相同,将 differenza 对象作为属性放在单例(您称之为“公共类”)上,然后您可以访问它从您的应用程序内的任何地方。这里的另一种方法是将其作为属性存储在实际类上并实现 prepareForSegue: 并将其传递给那里的destinationViewController。另外,如果您刚刚开始 ios 开发,我建议您在 iTunes U 上观看斯坦福大学最新的 iOS 开发课程,这对入门很有帮助! 【参考方案1】:

您可以使用prepareForSegue 传递数据检查此主题 How to pass prepareForSegue: an object

你可以像这样发送可变结果

【讨论】:

以上是关于将 Class 结果放入第二个 viewController的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 PageViewController 将 viewController 的数据传递给 pageViewController 的第二个 ViewController

Autolayout UILabel 高度在第二个视图外观上发生变化

访问数据视图中的第二个表

带有 CGPath 的 UIView 和另一个包含第一个 UIView 的 UIView。如何将第一个视图放入第二个视图?

当我们在swift中使用MKMapView点击mapView时如何移动到第二个Viewcontroller?

linux centos程序后台运行