在多视图应用程序中设置类实例(Objective C)

我是Objective C,Xcode等的新手。 感谢您的帮助,阅读这个论坛,我做了一些正确的方向,但只在“单一视图应用程序”。

现在我在故事板上有两个视图:

(FirstViewController.h / m)(SecondViewController.h / m)

我还创build了一个Objective C类,目的是从这两个视图接收数据。

第一次,在FirstViewController我有一个IBA的行动。

当按下button时:

controllo *control; control = [[controllo alloc] init]; 

然后我使用设置“控制”实例使用属性..它的工作。

现在即使在我传递给第二个视图之前,第一个视图(IBA ACTION)的button被按下,同样的“controllo”(控件)实例也应该从我的SecondViewClass接收数据,但是我无法访问它。

你能告诉我如何从我的项目中需要的所有视图访问一个类?

谢谢!

把所有的variables放到一个类中,通过单例模式访问这个类,然后将这个类的头文件导入到prefix.pch文件中

例如:

GlobalClass.h

 #import <Foundation/Foundation.h> @interface GlobalClass : NSObject @property (nonatomic, strong) NSString *globalString; @property (nonatomic, strong) NSNumber *globalNumber; + (GlobalClass*) sharedClass; - (void) methodA; @end 

和GlobalClass.m中

 #import "GlobalClass.h" @implementation GlobalClass + (GlobalClass *)sharedClass { static GlobalClass *_sharedClass = nil; static dispatch_once_t oncePredicate; dispatch_once(&oncePredicate, ^{ _sharedClass = [[GlobalClass alloc] init]; }); return _sharedClass; } - (id)init { self = [super init]; if (self) { //init variable here } return self; } - (void) methodA { //do something here NSLog(@"this is methodA called"); } @end 

把它放在你的.pch文件中

 #import "GlobalClass.h" 

现在,您可以使用以下任何类访问全局类variables:

 [GlobalClass sharedClass].globalString = @"this is a global string"; 

您也可以使用以下方法访问该方法:

 [GlobalClass sharedClass] methodA];