在项目开发中, 有时我们会用到.plist, 这个时候可能会使用这个plist,拿出来用model去绑定它来对应项目MVC, 我们可以引入RMMapper,废话不多说,看代码先。
在git clone RMMapper,操作不多说了哈, 不会的可以私信我,会详细给你支招。
一、创建一个类TaskPlist基于NSObject, 代码如下:
.h
#import <Foundation/Foundation.h>
@interface TaskPlist : NSObject
+ (id)taskPlistFramefontConfigurationName:(NSString *)name;
@end
.m
#import "TaskPlistModel.h"
#import "RMMapper.h" //3放转model
@implementation TaskPlist
+ (id)taskPlistFramefontConfigurationName:(NSString *)name{
NSString *plistPath = [[NSBundle mainBundle] pathForResource:name ofType:@"plist"];
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
NSLog(@"plist文件%@",dictionary);
if (dictionary == nil) {
NSLog(@"文件未空间");
return nil;
}
TaskPlistModel* model= [RMMapper objectWithClass:[TaskPlistModel class] fromDictionary:dictionary];
return model;
}
@end
二、创建一个TaskPlistModel, 属性如下:
#import <Foundation/Foundation.h>
@interface TaskPlistModel : NSObject
@property (strong, nonatomic) NSString *cellBackGround;
@property (strong, nonatomic) NSString *cellTitleColor;
@property (assign, nonatomic) NSInteger cellTitleSize;
@property (assign, nonatomic) NSInteger cellContentSize;
@property (assign, nonatomic) NSInteger homeTitle;
@property (assign, nonatomic) NSInteger tableViewTitle;
@property (assign, nonatomic) NSInteger keysSize;
@property (strong, nonatomic) NSString *keysColor;
@end
三、调用
TaskPlistModel*taskPlistModel = [ TaskPlist taskPlistFramefontConfigurationName:@"Task"];
//注释:@“task” 只项目中Task.plist 文件
![](https://app.yinxiang.com/shard/s51/res/84978faf-0c9c-4a8e-b455-5f6cd98c68c3/%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202016-04-13%20%E4%B8%8B%E5%8D%885.57.51.png)
纯手打大的, 如有不对的地方还望指点, 大神勿喷。。。 转载需注明原闻地址, 谢谢合作!