Я знаю, что один способ обмена данными - это segue. Но в моем приложении у меня есть несколько вкладок, которые содержат количество VC. Например, userName
и address
. Я хочу показать в некоторых из VC эту информацию. Каждый раз, когда я запрашиваю облако, это неправильный путь. Я следую за этим ответом первой части: answer. Но как новичок я не уверен, как определяется MyDataModel
. Это класс NSObject? Я ценю, если кто-нибудь может определить этот класс как пример с двумя полями NSString
. И как получить доступ к этим полям в VC и AppDelegate.Как делиться данными между количеством ViewControllers?
Внутри AppDelegate
@interface MyAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate>
{
MyDataModel *model;
AViewController *aViewController;
BViewController *bViewController;
...
}
@property (retain) IBOutlet AViewController *aViewController;
@property (retain) IBOutlet BViewController *aViewController;
@end
@implementation MyAppDelegate
...
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
...
aViewController.model = model;
bViewController.model = model;
[window addSubview:tabBarController.view];
[window makeKeyAndVisible];
}
Внутри VC:
@interface AViewController : UIViewController {
MyDataModel *model;
}
@property (nonatomic, retain) MyDataModel *model;
@end
@interface BViewController : UIViewController {
MyDataModel *model;
}
@property (nonatomic, retain) MyDataModel *model;
@end
Единственное, что мне нужно где определить MyDataMode
и как получить доступ к его полям?
Создайте SubClass из NSObject и в .h файле создайте '@property (неатомный, сохраняющий) NSString * str1;' '@property (неатомный, сохраняющий) NSString * str2;' –