Swift 图书展示项目
包括Swift/AFNetworking/MJRefresh/MBProgressHUD/Toast
Demo:https://github.com/shileseal/SLBookSwift
1.block里面要用self.防止循环使用
2.cocoa pods的写法,use_frameworks!是使用动态库,直接import oc库,如果没有这句话会默认使用静态库,只能使用桥接
platform :ios, ‘8.0’
use_frameworks!
pod 'AFNetworking', '~> 3.0.4'
pod 'MBProgressHUD', '~> 0.9.2'
pod 'Toast', '~> 3.0'
pod 'SDWebImage', '~> 3.7.5'
pod 'MJRefresh', '~> 3.1.0'
3.为数组建立索引
for (i,dict) in array.enumerate() {
self.books.append(Book(dict: dict))
indexPaths.append(NSIndexPath(forRow: count + i, inSection: 0))
}
4.oc中返回值为instancetype,在swift中无法直接使用
+ (instancetype)headerWithRefreshingBlock:(MJRefreshComponentRefreshingBlock)refreshingBlock;
要使用MJRefresh,重写以下方法
//添加顶部刷新
- (void)headerAddMJRefresh:(MJRefreshComponentRefreshingBlock)block;
//手动顶部刷新
- (void)headerBeginRefresh;
//取消顶部刷新状态
- (void)headerEndRefresh;
//添加底部刷新
- (void)footerAddMJRefresh:(MJRefreshComponentRefreshingBlock)block;
//手动刷新底部
- (void)footerBeginRefresh;
//取消底部刷新状态
- (void)footerEndRefresh;
//取消底部刷新状态并显示无更多数据
- (void)footerEndRefreshNoMoreData;
//重置无数据状态
- (void)footerResetNoMoreData;
5.添加oc文件的时候,会添加桥接文件,需要在桥接文件中添加对oc头文件的引用
UITableView+MJRefresh.h
UITableView+MJRefresh.m
在SLBook-Bridging-Header.h中写入
#import "UITableView+MJRefresh.h"