我来自 Web 开发背景。我无法理解如何在 iOS 开发中使用模型。
Web 开发中的模型是一个单独的文件,控制器文件可以通过以下功能访问它getMysqlQueryOf(stuff);
iOS开发是否使用相同的东西?我应该创建一个 MyModel.h 和 MyModel.m 文件并在我的所有视图控制器中包含/导入它并像这样访问模型类中的方法吗?
您能否展示一个模型类的简单示例以及如何从视图控制器访问它?
我来自 Web 开发背景。我无法理解如何在 iOS 开发中使用模型。
Web 开发中的模型是一个单独的文件,控制器文件可以通过以下功能访问它getMysqlQueryOf(stuff);
iOS开发是否使用相同的东西?我应该创建一个 MyModel.h 和 MyModel.m 文件并在我的所有视图控制器中包含/导入它并像这样访问模型类中的方法吗?
您能否展示一个模型类的简单示例以及如何从视图控制器访问它?
在我的 iOS 体验中,UIViewController 倾向于充当自己的孤岛。错误的方法是将您要放入模型的所有内容都放入委托类中。我认为您对“模型”的想法是正确的。我将创建一个 someModel.m 和一个头文件,并为每个需要模型的类提供一个指向它的指针,并在委托中初始化核心模型。
IMO,iOS 数据流还有一些不足之处。
如果我有一个想要在各种对象之间共享的数据模型,我会创建它以便我可以静态访问它。
例如,下面的代码创建了一个对象 dataHandle,通过包含头文件并调用 [MyData getMyData],项目中的任何其他对象都可以轻松访问该对象。
我的数据.h
@interface MyData : NSObject {
NSString *dataName; // example data in my object
}
@property (nonatomic, retain) NSString *dataName;
+ (MyData *)getMyData;
我的数据
@implementation MyData
@synthesize dataName;
static MyData *dataHandle;
+ (void)initData
{
dataHandle = [MyData new];
[dataHandle setDataName:@"DefaultName"];
}
+ (MyData *)getMyData
{
if (!dataHandle){
[MyData initData];
}
return dataHandle;
}