概念圖總結(jié):
1.添加app icon
2.添加啟動(dòng)圖片
3.分包(分模塊)
4.BaseViewController封裝TableView,繼承
5.宏定義和.pch文件以及配置
6.自定義cell(純代碼)
7.自定義cell(xib)
8.block界面?zhèn)髦?br>
(1)在.h聲明一個(gè)block屬性
@property(nonatomic,strong)void(^goBack)(HomeListModel *);
(2)在.m文件中調(diào)用用來(lái)傳值
(3)在其他控制器調(diào)用block方法用來(lái)接收值
9.協(xié)議(HomeTableViewCelldelgate)
(1)協(xié)議使用第一步:定義一個(gè)協(xié)議
@protocol SearchViewdelegate <NSObject>
在之間添加任意方法
@end
在.h中聲明協(xié)議的屬性,
(2)在.m調(diào)用協(xié)議的方法
(3)在控制器中使用:初始化對(duì)象,遵循實(shí)現(xiàn)協(xié)議
10.YYModel解析 前面是別名
+ (NSDictionary *)modelCustomPropertyMapper {
return @{@"name" : @"n",
@"page" : @"p",
@"desc" : @"ext.desc",
@"bookID" : @[@"id",@"ID",@"book_id"]};
}
+ (NSDictionary *)modelContainerPropertyGenericClass {
// value should be Class or Class name.
return @{@"shadows" : [Shadow class],
@"borders" : Border.class,
@"attachments" : @"Attachment" };
}
11.下拉刷新(MJRefresh)
(1)
//添加刷新
self.tableView.mj_header=[MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(refresh)];
self.tableView.mj_header.automaticallyChangeAlpha=YES;
(2)
-(void)refresh{
[self.tableView.mj_header beginRefreshing];
[self getDatas];
}
(3)
-(void)getDatas{
AFHTTPSessionManager *manger=[AFHTTPSessionManager manager];
[manger GET:URL_HOME parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {
[self.tableView.mj_header endRefreshing];
Model *model=[Model yy_modelWithJSON:responseObject];
[self.dataArray removeAllObjects];
[self.dataArray addObjectsFromArray:model.data];
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView reloadData];
});
} failure:^(NSURLSessionDataTask *task, NSError *error) {
[self.tableView.mj_header endRefreshing];
}];
}
12.AFNetworking網(wǎng)絡(luò)請(qǐng)求
13.SDWebImage設(shè)置網(wǎng)絡(luò)圖片和占位圖片
14.網(wǎng)絡(luò)請(qǐng)求配置權(quán)限
15.設(shè)置富文本