12-26 汽车品牌小应用

一:
流程:
1.通过plist加载模型对象,代码如下:
#import "CZCarGroup.h"

@implementation CZCarGroup
// 从字典里采的数据赋给这个对象
- (instancetype) initWithDic:(NSDictionary *)dic
{
if (self == [super init]) {
[self setValuesForKeysWithDictionary:dic];
}
return self;
}
//实例化一个对象,调用的是类方法
+ (instancetype) carGroupWithDic:(NSDictionary *)dic
{
// 生成一个实例化的类对象,并且利用对象方法从dic里传递数据给他;
return [[self alloc] initWithDic:dic];
}
// 最终调用的方法,直接生成从support文件中采的数据的CZCarGroup对象
+ (NSArray *)carGroupsList
{
NSString *path = [[NSBundle mainBundle ] pathForResource:@"cars_simple" ofType:@"plist"];
NSArray *dicArray = [NSArray arrayWithContentsOfFile:path];
NSMutableArray *tmpArray = [NSMutableArray array];
for (NSDictionary *dic in dicArray) {
CZCarGroup *carGroup = [CZCarGroup carGroupWithDic:dic];
[tmpArray addObject:carGroup];
}
return tmpArray;
}
@end
2.在controller中添加属性,并加载数据,代码如下:(使用懒加载)
//1.实现懒加载
- (NSArray *)carGroups
{
if(_carGroups == nil)
{
_carGroups = [CZCarGroup carGroupsList];
}
return _carGroups;
}
3.拖拽一个tableView(使用tableView必须设置数据源获取数据),代码如下:
- (void)viewDidLoad {
[super viewDidLoad];
// 2.设置数据源
self.tableView.dataSource = self;
// 测试数据有没有加载进来
NSLog(@"%@",self.carGroups);
}

4.让controller遵守数据源协议
@interface ViewController ()

5.在viewIDidLoad中,设置tableView的数据源为controller
- (void)viewDidLoad {
[super viewDidLoad];
// 2.设置数据源
self.tableView.dataSource = self;
// 测试数据有没有加载进来
NSLog(@"%@",self.carGroups);

}

6.实现数据源方法
//3.实现数据源方法
#pragma mark - 数据源方法
//共有多少组数据
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return self.carGroups.count;
}
//每一行有多少组
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
CZCarGroup * carGroup = self.carGroups[section];
return carGroup.cars.count ;
}
//设定每个cell中显示的内容
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// 1.创建一个UITableViewCell
UITableViewCell *cell = [ [UITableViewCell alloc] init];
// 2.获得当前组的数据
CZCarGroup *cargroup = self.carGroups[indexPath.section];
cell.textLabel.text = cargroup.cars[indexPath.row];
// 返回cell
return cell;
}
//设置尾部标示
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
CZCarGroup * carGroup = self.carGroups[section];
return carGroup.title;
}
//设置头部标示
- (NSString *) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
CZCarGroup * carGroup = self.carGroups[section];
return carGroup.desc;
}

7.演示效果

时间: 2024-10-31 06:07:04

12-26 汽车品牌小应用的相关文章

iOS基础控件之 汽车品牌展示 Model嵌套/KVC/TableView索引

A.需求 1.使用汽车品牌名称头字母为一个Model,汽车品牌为一个Model,头字母Model嵌套品牌Model 2.使用KVC进行Model封装赋值 3.展示头字母标题 4.展示索引(使用KVC代替遍历取出所有索引值) B.实现 1.Model嵌套 其实就是将另一个Model作为成员 .plist 文件结构 GroupCar中有存储Car的数组 1 @property(nonatomic, strong) NSArray *cars; 封装Model的时候需要进行相应处理 CarGroup.

[iOS基础控件 - 6.4] 汽车品牌展示 Model嵌套/KVC/TableView索引

A.需求 1.使用汽车品牌名称头字母为一个Model,汽车品牌为一个Model,头字母Model嵌套品牌Model 2.使用KVC进行Model封装赋值 3.展示头字母标题 4.展示索引(使用KVC代替遍历取出所有索引值) B.实现 1.Model嵌套 其实就是将另一个Model作为成员 .plist 文件结构 GroupCar中有存储Car的数组 1 @property(nonatomic, strong) NSArray *cars; 封装Model的时候需要进行相应处理 CarGroup.

AI行业精选日报_人工智能(12·26)

浙江「AI 法官」助民间借贷纠纷实现全流程智审 「现在进行法庭发问.原告,你与被告是何关系?」12 月 24 日,在杭州市下城区人民法院,法官王颖没有出声,法庭已响起了对原被告的提问.原来 AI 法官助理「小智」已将事实性问题列表实时推送到了显示屏上,法官只须点击具体问题,即可由「小智」完成发问.开庭后仅 30 分钟,原被告双方已收到判决书.点击结案后,「小智」提示法官:「案件已自动进入归档程序,庭审视频与庭审笔录可同步对应点击回看.」这场由「小智」和法官共同参与的民间借贷纠纷智能审理高效完成.

12.26~12.30工作日志

2016.12.26/27 1.writing-mode: vertical-rl;在电脑显示有效果,在手机端无效 解决办法:改为 -webkit-writing-mode: vertical-rl; 2.div设置inline-block之后,如果没有设置固定宽高,div内的内容将正常显示,div缩为一个点????????? 3.设置float的元素最好设置好宽度,便于控制 4.document.getElementsByClassName(classname)获取的是数组数组!!!!就算获取

VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|

VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|  分类: 网络互联 |  标签:10.10  yosemite  vmware  |举报|字号 订阅 http://lbq20042002.blog.163.com/blog/static/8235302015013111858664/ 下载LOFTER我的照片书  | VMware Workstation 11 安装MAC OS X 10.

iOS-汽车品牌app

资料:汽车图片 和plist 文件:两个模型 // // Car.h // 汽车品牌 // // Created by YaguangZhu on 15/8/16. // Copyright (c) 2015年 YaguangZhu. All rights reserved. // #import <Foundation/Foundation.h> @interface Car : NSObject @property(nonatomic,copy)NSString *name; @prope

12.26&amp;12.27 -正则表达式

12.26&12.27 正则表达式 第1章 使grep/egrep 过滤出的东西加上颜色 cat >>/etc/profile<<EOF alias grep='grep --color=auto' alias egrep='egrep --color=auto' EOF source /etc/profile alias grep egrep 第2章 正则表达式分类 2.1 基础正则表达式:basic    regular expression  BRE  ^  $  .

维修费最低的10个汽车品牌和10款车

汽车是美加家庭最主要的消费品之一,汽车维修和维护也是拥车族必须要面对的事情,那么哪些品牌的汽车维修费最便宜呢?今年路上最可靠的汽车又是哪些? 美国汽车维修网站CarMD在其2018年车辆健康指数品牌和车型排名中回答了上述问题. 自2011年以来,CarMD每年出版一次排名.此次排名调查了从1996年开始的二手车到新车,在今年的维修费用及频率.该报告不包括轮胎和制动器问题的维修和维护,以及换油等日常维护. CarMD表示,在2017年10月1日到2018年9月20日之间,他们分析了大约560万辆汽

Eclipse 下载与安装(2014.12.26——by小赞)

Eclipse网站首页:http://www.eclipse.org/home/index.php Eclipse下载页网址:http://www.eclipse.org/downloads/ 步骤一:进入下载页,选择下载的版本 步骤二:下载 将弹出下载窗口 步骤三:解压,即可使用 来自为知笔记(Wiz)