我在我的目标c应用程序中使用JSONModel。我在第一个abBarController中获取了所有数据到我的JSONModel。然后我需要在其他viewController中获取此数据。我正在尝试将此数据发送到其他viewControllers,如:
First ViewController:
@implementation FirstViewController
...
SecondViewController* infoController = [self.storyboard instantiateViewControllerWithIdentifier:@"secondViewController"];
SecondViewController.model = self.model;//Here send the model with data
[self.navigationController pushViewController:infoController animated:YES];
...
@end
第二个ViewController:
@interface SecondViewController :UIViewController{
MyModel *model;
}
@property MyModel *model;
有一种更好的形式可以保持这个数据模型的实例化并从另一个viewController获取模型数据而不在属性中发送它吗?
答案 0 :(得分:1)
创建对象类
在.h对象类
@interface FirstModel : NSObject{
}
@property(nonatomic,strong)NSMutableArray *productsArray;
在.m对象类
-(id)init{
self=[super init];
if (self) {
_productsArray=[[NSMutableArray alloc]init];
}
return self;
}
创建另一个对象类
@interface SecondModel : NSObject
@property (nullable,nonatomic, retain) NSString *name;
@end
在TableviewViewcontroller .h文件中 导入两个Object类并插入以下编码
@property(nonatomic,strong)FirstModel *firstListObject;
在.m文件中 //用于rowAt Indexpath的单元格
SecondModel *prodObj=_firstListObject.productsArray[indexPath.item];
cell.productNameLabel.text=prodObj.name;
您可以在任何需要的地方访问此对象类...
答案 1 :(得分:0)
您可以使用单例类,创建模型属性。 在另一个viewController中,您可以通过singleton实例访问您的模型。参考http://www.idev101.com/code/Objective-C/singletons.html
答案 2 :(得分:0)
或者您可以使用plist或基于数据的
将其存档到本地文件