博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

创建单键模式的类

Posted on 2011-06-27 15:35  星尘的天空  阅读(195)  评论(0编辑  收藏  举报

这里我们以创建一个类,使其具有单键的功能:

ConfigManager头文件代码:

----------------------------------------------------------------------------

#import <Foundation/Foundation.h>

 

 

@interface ConfigManager : NSObject {

 

NSArray *TiledMapServer ;

}

@property (nonatomic,retain) NSArray *TiledMapServerArray;

 

+(ConfigManager *)GetConfigManagerInstance;

-(void)initConfigInfo;

 

 

@end

 

 

----------------------------------------------------------------------------

ConfigManager 源文件代码

----------------------------------------------------------------------------

#import "ConfigManager.h"

 

 

@implementation ConfigManager

@synthesize TiledMapServerArray;

 

static ConfigManager *InstanceConfigManager;

static NSString *ConfigFileName=@"Config";

static NSString *ConfigFileType=@"plist";

 

 

 

+(ConfigManager *)GetConfigManagerInstance

{

    @synchronized(self)

{

       if (InstanceConfigManager==nil)

  {

  InstanceConfigManager = [[self alloc] init];

  [InstanceConfigManager initConfigInfo];

  }

 

}

return InstanceConfigManager;

}

 

 

-(void)initConfigInfo

{

NSString *configFilePath = [[NSBundle mainBundle] pathForResource:ConfigFileName ofType:ConfigFileType];

NSDictionary *dictRoot = [[NSDictionary alloc] initWithContentsOfFile:configFilePath];

NSDictionary *dictMapServer = [dictRoot objectForKey:@"MapServer"];

TiledMapServerArray = [dictMapServer objectForKey:@"TiledLayerPath"];

}

 

 

 

@end

 

 

调用方法:

----------------------------------------------------------------------------

ConfigManager * pConfigManager = [ConfigManager GetConfigManagerInstance];

NSArray * tt = pConfigManager.TiledMapServerArray;

NSString *aa = [tt  objectAtIndex:0];

 

 

 

THE END !