plist文件的实现

在initWithNibName中获取plist文件中的内容

 1 //        获取plist文件
 2         NSDictionary * dic = [NSDictionary dictionaryWithContentsOfFile:@"plist文件地址"];
 3         NSLog(@"%@",dic);
 4         self.BookDic = [NSMutableDictionary dictionary];
 5 //        将文件中的所有内容都取出
 6         for (NSString * key  in dic) {
 7             NSArray * arr = [dic objectForKey:key];
 8             self.bookArr = [NSMutableArray array];
 9             for (NSDictionary * temDic in arr) {
10                 Books * book = [[Books alloc]init];
11                 book.name = [temDic objectForKey:@"name"];
12                 book.content = [temDic objectForKey:@"content"];
13                 book.img = [temDic objectForKey:@"photo"];
14                 [self.bookArr addObject:book];
15
16                 [book release];
17                 NSLog(@"%@",book.name);
18
19             }
20             [self.BookDic setObject:self.bookArr forKey:key];
21         }
22         self.view.backgroundColor = [UIColor cyanColor];

设置section的个数

1 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
2
3 //    设置section的个数
4     return self.BookDic.allKeys.count;
5 }

设置row的个数

1 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
2
3 //    设置每个section的行数
4     NSString *key = [[self.BookDic allKeys] objectAtIndex:section];
5     return [[self.BookDic objectForKey:key] count];
6 }

对cell进行传值

 1 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
 2
 3     BookTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"bookCell"];
 4
 5     if (!cell) {
 6         cell = [[BookTableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"bookCell"];
 7     }
 8
 9 //    进行传值
10     NSString *key = [[self.BookDic allKeys] objectAtIndex:indexPath.section];
11     NSMutableArray *arr = [self.BookDic objectForKey:key];
12
13     Books * bok = [arr objectAtIndex:indexPath.row];
14     cell.book = bok;
15     // Configure the cell...
16
17     return cell;
18 }
时间: 2024-10-23 20:27:01

plist文件的实现的相关文章

Cocos数据篇[3.4](4) ——plist文件操作

[唠叨] 在Cocos中,plist文件 是非常常见的配置文件.它是特定格式的xml文件. 例如:小图打包成大图的纹理图片.制作粒子特效.帧动画等,都用到了plist文件作为配置文件. 本节要介绍的是:如何创建plist文件,以及读取plist文件中的数据信息. [扩展阅读] http://zh.wikipedia.org/wiki/Plist (维基百科) http://zengrong.net/post/1981.htm (COCOS2D-X中的PLIST文件格式详解) http://cn.

什么是Plist文件

直接将数据直接写在代码里面,不是一种合理的做法.如果数据经常改,就要经常翻开对应的代码进行修改,造成代码扩展性低 因此,可以考虑将经常变的数据放在文件中进行存储,程序启动后从文件中读取最新的数据.如果要变动数据,直接修改数据文件即可,不用修改代码 一般可以使用属性列表文件存储NSArray或者NSDictionary之类的数据,这种“属性列表文件”的扩展名是plist,因此也称为“plist文件” 解析Plist文件 获得Plist文件的全路径 NSBundle *bundle = [NSBun

解析plist文件(字典里包着数组,数组中又包含字典)

1 #import "RootTableViewController.h" 2 #import "City.h" 3 4 @interface RootTableViewController () 5 6 // 声明存放所有城市的大字典 7 @property (nonatomic, strong) NSMutableDictionary *allDataDict; 8 9 // 存储所有的key数组(存放省份) 10 @property (nonatomic, s

边练边学--plist文件,懒加载,模型初使用--补充instancetype

一.什么是plist文件 1>将数据直接写在代码里面,不是一种合理的做法.如果数据经常修改,就要经常翻开对应的代码进行修改,造成代码扩展性低 2>因此,可以考虑将经常变得数据放在文件中进行存储,程序启动后从文件中读取最新的数据.如果要变动数据,直接修改数据文件即可,不用修改代码 3>一般可以使用属性列表文件存储NSArray或者NSDictionary之类的数据,这种“属性列表文件”的扩展名是plist,因此也成为“plist文件” 二.创建plist文件 三.解析plist文件 代码实

iOS-地图开发 Plist文件设置权限

解决办法: 在.Plist文件中添加 <key>NSLocationUsageDescription</key> <string>请点击“好”以允许访问. 若不允许,你将无法使用"发现"这个功能.</string> <key>NSLocationWhenInUseUsageDescription</key> <string> 请点击“好”以允许访问. 若不允许,你将无法使用"发现"这

iOS开发——数据持久化OC篇&amp;plist文件增删改查操作

Plist文件增删查改 主要操作: 1.//获得plist路径    -(NSString*)getPlistPath: 2.//判断沙盒中名为plistname的文件是否存在    -(BOOL) isPlistFileExists: 3.//读取沙盒中Document文件夹下的BookList.plist文件 [NSMutableDictionarydictionaryWithContentsOfFile:plistPath]; 4.//写入文件     if ([plistDictiona

SWIFT中将信息保存到plist文件内

在项目中可能我们需要保存一些数据到plist文件中,以下就本人在学习过程中的笔记,不成熟的地方请指出. 可能我有一个类叫做Student import UIKit class Student: NSObject { var text:String var age:Bool init(text:String,age:Int) { self.text = text self.age = age } //从nsobject中解析回来 init(coder aDecoder:NSCoder){ self

关于plist文件的那些事

今天遇到新生问一个问题,就是用自己定义了一个plist文件,然后可以往里面写东西,但是写过再次运行的时候里面的数据总是最后一次写入的数据.后来就专门研究了一下plist文件. 大家都知道当你创建一个项目的时候,在Supporting Files中会有一个Info.plist文件,这个文件中存储的信息如下: 它是整个APP的配置文件,包括了版本信息以及APP桌面显示名称等信息.可能是我还不太了解,但是经过我测试发现我无法用代码对Info.plist这个文件进行操作. 先把plist文件放在一边,先

iOS工程中的info.plist文件的完整研究

原地址:http://blog.sina.com.cn/s/blog_947c4a9f0100zf41.html 们建立一个工程后,会在Supporting files下面看到一个"工程名-Info.plist"的文件,这个是对工程做一些运行期配置的文件,很重要,不能删除. 如果你在网上下载的工程中的这个文件名只是Info.plist,那么恭喜你,这个工程太老了,是用包含SDK2.0以前的Xcode生成的,不过没关系,不影响使用. 如果你使用文本编辑器打开这个文件,你会发现这是一个XM

解决pathForResource返回nil, 无法读取plist文件问题

有很多人在设置plist文件的时候, 会发现读取不了plist文件里面的内容, 返回值为nil, 下面我们来解决一下这个问题. 首先我们打开工程并且按照下面的步骤来设置: 设置好后, 我们来写一段代码测试一下看看是否添加好: NSBundle *bundle = [NSBundle mainBundle]; NSString *path = [bundle pathForResource:@"images" ofType:@"plist"]; _imageData