QQ好友列表數據模型封裝
阿新 • • 發佈:2017-05-29
key post setvalue ron mod board oftype super uiview
QQ好友中的信息較多。假設我們單獨從plist 中直接取出數據 是能夠解決這個問題
可是相當復雜。以為列表中分組 。每組中還有不同信息
大致模型是 數組套數組 數組套字典
所以我們要封裝數據模型
// // GPGroupController.h // 02-好友分組 // #import <UIKit/UIKit.h> @interface GPGroupController : UIViewController @end
// // GPGroupController.m // 02-好友分組 // #import "GPGroupController.h" #import "GPGroup.h" #import "NSArray+LocalPrint.h" @interface GPGroupController () @property(nonatomic,strong)NSArray *groups; @end @implementation GPGroupController -(NSArray *)groups { if (_groups == nil) { //1. NSString *path = [[NSBundle mainBundle]pathForResource:@"qq_group.plist" ofType:nil]; NSArray * dicts =[NSArray arrayWithContentsOfFile:path]; //2. NSMutableArray *objs = [NSMutableArray array]; for(NSDictionary *dic in dicts) { GPGroup *group = [GPGroup groupWthDict:dic]; [objs addObject:group]; } //3. _groups = objs; } return _groups; } - (void)viewDidLoad { [super viewDidLoad]; NSLog(@"%@",self.groups); // Do any additional setup after loading the view. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } /* #pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { // Get the new view controller using [segue destinationViewController]. // Pass the selected object to the new view controller. } */ @end
// // GPFriend.h // 02-好友分組 #import <Foundation/Foundation.h> @interface GPFriend : NSObject @property(nonatomic,copy)NSString *icon; @property(nonatomic,copy)NSString *message; @property(nonatomic,copy)NSString *name; +(id)friendWithDict:(NSDictionary *)dict; -(id)initWithDict:(NSDictionary *)dict; @end
// // GPFriend.m // 02-好友分組 // #import "GPFriend.h" @implementation GPFriend +(id)friendWithDict:(NSDictionary *)dict { return [[self alloc]initWithDict:dict]; } -(id)initWithDict:(NSDictionary *)dict { if (self = [super init]) { [self setValuesForKeysWithDictionary:dict]; } return self; } - (NSString *)description { return [NSString stringWithFormat:@"icon=%@,name=%@,message=%@", _icon,_name,_message]; } @end
QQ好友列表數據模型封裝