0

我有一个类,其中包含从我的服务器下载数据的方法。这是 JSON 的形式,但会被解析并放入一个数组中。由于这是一个“模型”文件,那么制作它以便多个“控制器”可以访问这些数据的最佳方法是什么?

4

2 回答 2

2

将其挂在应用程序委托上,将其粘贴在全局变量中,或在适当的位置声明一个类方法以返回它。

更好的是,现在开始考虑拥有一个合适的模型层,除其他外,它可以管理这些数据。随着应用程序的发展,这将使重构在未来变得更加容易。

于 2012-07-21T18:02:01.427 回答
0

您可以使用数组对象创建类的单例对象。并且通过使用类方法,您可以在应用程序的任何位置获取该数组。

例如

在 Cardnames.h 文件中

#import <Foundation/Foundation.h>

@interface CardNames : NSObject

@property (nonatomic, retain) NSMutableArray *CardNamesArray;

+(CardNames*) getCardsList;

@end

在 Cardnames.m 文件中

#import "CardNames.h"

@implementation CardNames

@synthesize CardNamesArray;

static CardNames *cards = nil;

+(CardNames*) getCardsList
{
    @synchronized(self)
    {
        if(cards == nil)
        {
            cards = [[self alloc] init];

            cards.CardNamesArray = [[NSMutableArray alloc] init];

            /// code to fill array

        }
        return cards;
    }
}
@end

在其他课程中,您可以像这样使用

#import "CardNames.h"
.
.
.
NSMutableArray *CardsArray = [[CardNames getCardsList] CardNamesArray];
于 2012-07-22T11:13:46.570 回答