UI基础-day03-Shopping-06懒加载-2Plist文件读取

UI基础-day02-Shopping-01搭建商城基本框架
UI基础-day02-Shopping-02添加一个商品
UI基础-day02-Shopping-03九宫格排序
UI基础-day02-Shopping-04优化添加和删除功能
UI基础-day02-Shopping-05加载数据
UI基础-day02-Shopping-06懒加载-1基础

分析:

  1. 当多处都需要使用同一个数据源时,该怎么办?
  2. 当多处都需要修改同一个数据源里面,某一个元素,该怎么办?

Plist文件

  1. 创建Plist文件(项目中 CMD +N, 找到 Property List)


  2. 代码方式读写Plist文件.


将数组的内容写入给定路径的文件。
- (BOOL)writeToFile:(NSString *)path 
         atomically:(BOOL)useAuxiliaryFile;
创建并返回一个包含给定路径指定的文件内容的数组。
+ (NSArray<ObjectType> *)arrayWithContentsOfFile:(NSString *)path;

2.1 读写Plist文件中的数组.

- (void)viewDidLoad {
    [super viewDidLoad];
     //1.写入数据到plist文件.
     NSArray *names = @[@"单肩",@"双肩",@"斜跨包",@"手提包"];
     BOOL flag = [names writeToFile:@"/XX/XX.plist" atomically:YES];
     if(flag){
     NSLog(@"写入成功");
     }
     
     //2.从Plist文件中读取出数据
     NSArray *nameArray= [NSArray arrayWithContentsOfFile:@"/XX/XX.plist"];
     NSLog(@"%@",nameArray);
     [self layoutUI];
    }

2.2 读写Plist文件的数组+字典

@property (nonatomic, strong) NSArray *shopDataArray;

- (void)viewDidLoad {
    [super viewDidLoad];
     //1. 写入数据到plist文件
     NSArray *shops =@[
     @{
       @"icon":@"danjianbao",
       @"name":@"单肩包"
     },
     ......
     @{
       @"icon":@"xiekuabao",
       @"name":@"斜挎包"
     }
     ];
     BOOL judge = [shops writeToFile:@"/XX/XX.plist" atomically:YES];
     if(judge){
     NSLog(@"写入成功");
     }
    ......
}
 
//2.读取plist文件数据到shopDataArray
-(NSArray *)shopDataArray{
if (_shopDataArray == nil) {
_shopDataArray = [NSArray arrayWithContentsOfFile:@"/XX/XX.plist"];
}
return _shopDataArray;
}
  1. 直接在Plist文件中,写入数据. 然后读取'软件安装包'下Plist文件.


-(NSArray *)shopDataArray{
    if (_shopDataArray == nil) {
        NSString *path = [[NSBundle mainBundle ]pathForResource:@"文件名" ofType:@"plist"];
        _shopDataArray = [NSArray arrayWithContentsOfFile:path]; // plist文件数据到shopDataArray
    } 
    return _shopDataArray;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容