学习Coding-iOS开源项目日志(三)
继续前两篇,接着本第三篇《学习Coding-iOS开源项目日志(三)》讲解Coding-iOS开源项目。
前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目。本篇开始会陆续更新本人对github上开源的一个很不 错的项目的一点点学习积累。也就是,探究着别人写的源码,我学到了新的什么东西?本人愚拙,而且码龄不多,也就三年左右,水平不高,如有挫解,还望指正。 本人乐爱学习,乐于分享,广结良缘,愿意交流。当然,高手可以飘过。
Coding-iOS项目网址:https://github.com/Coding/Coding-iOS 读者感兴趣的可以自己去下载,当然项目很多第三方框架是没有直接集成进来的,读者自行通过该项目的提示处理。
另外还有官网介绍:https://coding.net/u/coding/p/Coding-iOS/git#rd
内容概要:
1、关于Coding中的自定义Cell
2、关于TableViewCell被选中,然后会恢复未被选中
3、关于UISegmentedControl
4、关于RootTabViewController
5、关于RKSwipeBetweenViewControllers
正文:
1、关于Coding中的自定义Cell
这段内容比较多了,因为Coding中的自定义的各种各样的Cell很多哦,所以我会慢慢更新,哈哈。
用Reveal查看"消息"界面的UI,可以看到:
然后回到代码中查看,可以很快的定位到ConversationCell和ToMessageCell这两个自定义Cell的类。
然后进一步查看ToMessageCell,可以看到
另外:
本小节会不断的更新。
2、关于TableViewCell被选中,然后会恢复未被选中
这是个很基础的东西,只需要在UITableView下面这个代理方法调用一行代码即可:
3、关于UISegmentedControl
其实UISegmentedControl可能是你们很常见的控件,但是本人用的很少,所以不太熟悉用法,然后看到Coding中正好使用了,所以就截图来查看使用方法,就这样我又学到东西了。
通过Reavel我们可以发现这个UISegmentedControl在控制器EditTopicViewController中,然后接着我们回到Coding项目中:
可以找到这个EditTopicViewController控制器,然后查看:
就这样我们可以通过Coding这个案例学习到东西了,拿去运用到你项目中需要的地方去吧。
然后注意,如果需要在启动当前界面的时候,UISegmentedControl默认要有一个被选中的状态,而不是默认都不被选中,所以需要:
接着:
然后对应还要设置响应的业务逻辑代码:
4、关于RootTabViewController
在RootTabViewController中,我们可以看到它添加了五个控制器:
5、关于RKSwipeBetweenViewControllers
这个RKSwipeBetweenViewControllers,我也是从上面一个截图中的冒泡控制器对象就是通过这个RKSwipeBetweenViewControllers类创建的,然后我通过commond+click点进去查看,发现这个RKSwipeBetweenViewControllers就是github上开源的很不错的源码:https://github.com/cwRichardKim/RKSwipeBetweenViewControllers
然后我们再看看Coding的效果:
Coding对这个RKSwipeBetweenViewControllers进行了自定义的修改,RKSwipeBetweenViewControllers的开发者设计的效果不是这样的,但是Coding的开发者却改的很不错,视觉效果就是上面的效果,很好看吧。
本人打算将这个RKSwipeBetweenViewControllers进行学习,然后进行很好的高内聚低耦合的有效封装,并适用更多的使用场景,以满足更多的需求。(需要时间,哈哈)
学习Coding-iOS开源项目日志(三)的更多相关文章
- 推荐大家在GitHub 上值得关注学习的 iOS 开源项目
GitHub上有很多不错的iOS开源项目,和大家特别推荐以下几个项目: 1. ReactiveCocoa GitHub链接:ReactiveCocoa/ReactiveCocoa GitHub自家的函 ...
- 直接拿来用!最火的iOS开源项目(三)
相比Android,GitHub上的iOS开源项目更可谓是姹紫嫣红.尽管效果各异,但究其根源,却都是因为开发者本身对于某种效果的需求以及热爱.在“直接拿来用!最火的iOS开源项目”系列文章(一).(二 ...
- 直接拿来用!最火的iOS开源项目(一~三)
结束了GitHub平台上“最受欢迎的Android开源项目”系列盘点之后,我们正式迎来了“GitHub上最受欢迎的iOS开源项目”系列盘点.今天,我们将介绍20个在GitHub上非常受开发者欢迎的iO ...
- 学习Coding-iOS开源项目日志(一)
前言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目.本篇开始会陆续更新本人对github上开源的一个很不错的项目的一点点学习积累.也就是,探究着别人写的源码,我学到了 ...
- 学习Coding-iOS开源项目日志(二)
继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...
- 学习Coding-iOS开源项目日志(五)
继续,接着前面第四篇<学习Coding-iOS开源项目日志(四)>讲解Coding-iOS开源项目. 前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目 ...
- 转__Android开源项目(三 完结篇)
http://www.csdn.net/article/2013-05-21/2815370-Android-open-source-projects-finale/1 截至目前,在GitHub“最受 ...
- iOS开源项目周报1222
由OpenDigg 出品的iOS开源项目周报第二期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. io ...
- 直接拿来用!最火的iOS开源项目
1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...
随机推荐
- LeetCode - Populating Next Right Pointers in Each Node II
题目: Follow up for problem "Populating Next Right Pointers in Each Node". What if the given ...
- Windows 8 应用商店无法连接到网络的终极完美解决方案
当你看到以下几个步骤的时候,你可能会不以为然,因为你已经试过了,还是没成功,依然提示"你的电脑没有连接到Internet或者现在无法使用Windows应用商店,要使用Windows应用商店, ...
- 创建html元素
如果我要创建一个div元素. 1.使用DOM对象创建: 使用document.createElement('div')方法创建元素. 2.使用JQuery创建: 使用$('<div>通过J ...
- STOP:c0000218 {Registry File Failure}
这几天够折腾的了,一台很老很老的服务器,在启动之后,一个阵列磁盘掉线了: 也许是磁盘坏了: 服务器4个硬盘做的是RAID1,正常来说,坏了其中一二个硬盘是没有问题的.现更换了一个好的硬盘之后,系统无法 ...
- html5掷骰子的小demo
代码如下: <!DOCTYPE> <html> <title>柯乐义</title> <head> <script> var l ...
- 手机Fildder抓包_监控应用请求
Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的“进出”的数据(指co ...
- 【SQL】找出行数与自增标识值不相等的表(即有缺行)
环境:mssql ent 2k8 r2 原理:遍历所有含自增列的用户表,用sp_spaceused过程分别获取每张表的行数并写入临时表,然后使用IDENT_CURRENT函数获取表的最大标识值,比较二 ...
- Java总结篇系列:Java String
String作为Java中最常用的引用类型,相对来说基本上都比较熟悉,无论在平时的编码过程中还是在笔试面试中,String都很受到青睐,然而,在使用String过程中,又有较多需要注意的细节之处. 1 ...
- 百度云推送-服务端 C# SDK
思路: 1.公司有项目需要做android和ios手机端推送消息的功能: 2.没有接触过这方面的知识,一头雾水,开始在网上一顿搜,网上倒是有不少解决方案,首先搜的是android的解决方案,因为ios ...
- 【C#进阶系列】18 特性Attribute
这个东西有的叫定制特性,然而我喜欢直接叫特性,但是这样的话一些人不知道我说的是什么,如果我说是Attribute的话那么知道的或者用过的就都懂了. 还记得讲到枚举和位标志那一章,关于位标志,有一个[F ...