1.Swift语言特点

Extensions(扩展):就是向一个已有的类、结构体、枚举类型或者协议类型添加新功能。这包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模)

map: 得到一个由闭包里面的返回值组成的新序列
flatMap: 与map类似的功能,但是会过滤掉返回值里面的nil值
Filter: 得到一个由闭包返回值为true的值组成的新序列

2.使用CocoaPods管理framework

iOS8后苹果开放了framework,也就是动态库功能和静态库在编译时和app代码链接并打进同一个二进制包中不同,动态库可以在运行时手动加载,这样就可以做很多事情。1.应用插件化 2.软件版本实时模块升级 3. 共享可执行文件(仅可用于App Extension)

安装CocoaPods:

gem sources -l
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l
sudo gem install -n /usr/local/bin cocoapods

# cd xxx项目

# touch Podfile

编辑Podfile内容如下:

platform :ios,'8.0'

pod 'AFNetworking', '~> 2.6.0'
pod 'MJRefresh', '~> 2.4.11'
pod 'HysteriaPlayer', '~> 2.1.2'
pod 'TMCache', '~> 2.1.0'
pod 'FMDB', '~> 2.5'
pod 'Masonry', '~> 0.6.2'
pod 'Toast', '~> 2.4'
pod 'MBProgressHUD', '~> 0.9.1'
pod 'SDWebImage', '~> 3.7.3' # add webimage lib
pod 'BlocksKit', '~> 2.2.5'

# pod install

打开工程记得选择xxx.xcworkspace文件

注:CocoaPods生成一个动态框架,其中包含了所有pods而非一个静态库,采用import moduleName来引用第三方库。

如果Pods后面显示 ?,此时点击你的带问号的文件在Xcode上卖弄点击source control->add selected files.就可以了。

3.项目功能简介

  • 请求并解析图书列表数据
  • 自适应单元格高度的UITableView
  • 下拉刷新和上拉加载更多
  • UISearchController搜索图书

Swift图书展示项目笔记的更多相关文章

  1. 《Swift开发指南》国内第一本Swift图书上市了

    <Swift开发指南>国内第一本Swift图书上市了 既<courseId=799262">苹果Swift编程语言开发指南>视频教程地址:courseId=79 ...

  2. Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid

    Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid 上一步获取QQ登录网址之后,测试登录之后本该跳转到这个界面 但是报错了: 新建oauth_callback.html & ...

  3. Django商城项目笔记No.5用户部分-注册接口-短信验证码

    Django商城项目笔记No.4用户部分-注册接口-短信验证码 短信验证码也保存在redis里(sms_code_15101234567) 在views中新增SMSCodeView类视图,并且写出步骤 ...

  4. Django学习——分组查询、图书管理系统项目、wsgi, uwsgi, cgi, fastcgi

    1 分组查询 # 分组查询 # 查询每一个出版社id,以及图书平均价格(单表) # 原生sql # select publish_id,avg(price) from app01_book group ...

  5. 《BI项目笔记》——微软BI项目笔记连载

    本系列文章主要是结合实际项目,加上自己的总结,整理出来的一系列项目笔记,涉及微软SQL Server2008中商务智能开发中的SSAS.SSIS模块:  准备工作: <BI项目笔记>基于雪 ...

  6. C#Light 再推荐,顺便介绍WP8 功能展示项目

    由于在项目中验证了C#Light脚本,C#Light的健壮和稳定程度已经得到了很大的提升. 现在可以更好的把C#Light介绍给大家使用,同时也有更多的自信,告诉大家这是一个已经具有商业价值的类库. ...

  7. ios开发——实战Swift篇&简单项目的实现

    学了这么久的swift语法和相关技术,今天忍不住手痒痒就写了一个swift的小项目,这个项目非常简单(只是使用一个UITableView),但是里面的功能却非常有用. 我们要实现的功能是这样的: 程序 ...

  8. 项目笔记---CSharp图片处理

    原文:项目笔记---CSharp图片处理 项目笔记---CSharp图片处理 最近由于项目上需要对图片进行二值化处理,就学习了相关的图片处理上的知识,从开始的二值化的意义到动态阀值检测二值化等等,并用 ...

  9. Objective-C 和 Swift 混编项目的小 Tips(一)

    本文主要闲聊一些 Objective-C 和 Swift 混编项目带来的一些潜规则,希望能帮到对此感到疑惑的朋友.下面我们开始进入主题: 命名 官方 Guide 上只是简单叙述(Using Swift ...

随机推荐

  1. if语句格式及流程

    if语句是条件判断功能 1. if 条件: if语句块 执行流程:判断条件是否为真. 如果真. 执行if语句块 2. if 条件: if语句块 else: else语句块 执行流程:判断条件是否为真. ...

  2. MySql导出sql语句

    sql解释: mysqldump 是mysql的一个专门用于拷贝操作的命令 --opt 操作的意思 --compress 压缩要传输的数据 --skip-lock 忽略锁住的表(加上这句能防止当表有外 ...

  3. 反射和动态加载bean 完成 通用servie

    最近我们部门有个小项目,用来管理这个公司所有项目用到的代码表,例如国家代码.行政区划代码等.这个项目的功能其实很少,就是简单的修改.查询.新增和逻辑删除.但是为每张表都写一套增删改查的页面和一套ser ...

  4. vue中监听window.resize的变化

    我只想说每个人遇到的bug真的不能一概而论,解决办法也会有不同.在vue中使用echarts的时候,会想要实现window.resize窗体变化大小的时候让图形大小跟着变化.实现的过程中各种bug,也 ...

  5. Dynamics 365Online 使用adal.js注册和配置SimpleSPA应用程序

    本篇是基于dynamics 365online撰写,本文中使用的365online及azure均为试用版,因为online在国内还没落地,所以我申请的是新加坡版,online的申请方式可见我之前的博文 ...

  6. SD从零开始09-10

    SD从零开始9 数据流(Data Flow) 根据参考创建Create with reference 可以参考之前的凭证来创建销售凭证,可以在初始画面,也可以在凭证处理过程中,通过uniform. d ...

  7. webpack中mainifest.js vendor.js app.js 三者的区别

    场景: 大家在利用构建工具进行应用最后的打包过程中,我们希望做到的是将业务代码和第三方引用模块代码分开打包. 因为第三方引用模块代码通常很大,而且在不引入新的模块之前基本上是不会变动的.所以我们需要将 ...

  8. ISDBT中CC的处理疑问

    一个针对日本的数字电视应用(ISDBT)里字幕处理有一些问题,规范文档庞大又复杂,读起来还觉得语焉不详.接手遗留项目尝试处理字幕显示的问题,边读spec边看代码,先猜测.试图理解既有逻辑,再分析问题产 ...

  9. python + Jenkins + requests 数据驱动接口测试 环境部署

    ** Jenkins安装: * 安装包选择:Jenkins.war * windows下有msi和war两种格式,我使用的是war,下载下来丢到xmapp的指定目录就行,操作方便一点      * m ...

  10. LeetCode题解之Split Linked List in Parts

    1.题目描述 2.题目分析 主要是理解题意,将每个子链表应该分得的节点个数计算清楚.利用除数和余数的方法进行计算. 3.代码 vector<ListNode*> splitListToPa ...