孵化中  • 共收到资源47篇 • 2人推荐
iOS系统中导航栏的转场解决方案与最佳实践
ldehai   推荐   
目前,开源社区和业界内已经存在一些 iOS 导航栏转场的解决方案,但对于历史包袱沉重的美团 App 而言,这些解决方案并不完美。有的方案不能满足复杂的页面跳转场景,有的方案迁移成本较大,为此我们提出了一套解决方案并开发了相应的转场库,目前该转场库已经成为美团点评多个 App 的基础组件之一。 本文将从导航栏的概念入手,通过讲解转场过程中的状态管理、转换时机和样式变化等内容,引出了在大型应用中导航栏转场的三种常见解决方案,并对美团点评的解决方案进行剖析。
Realm数据库 从入门到放弃
ldehai   推荐   
Realm官网上说了好多优点,我觉得选用Realm的最吸引人的优点就三点: 跨平台:现在很多应用都是要兼顾iOS和Android两个平台同时开发。如果两个平台都能使用相同的数据库,那就不用考虑内部数据的架构不同,使用Realm提供的API,可以使数据持久化层在两个平台上无差异化的转换。 简单易用:Core Data 和 SQLite 冗余、繁杂的知识和代码足以吓退绝大多数刚入门的开发者,而换用 Realm,则可以极大地学习成本,立即学会本地化存储的方法。毫不吹嘘的说,把官方最新文档完整看一遍,就完全可以上手开发了。 可视化:Realm 还提供了一个轻量级的数据库查看工具,在Mac Appstore 可以下载“Realm Browser”这个工具,开发者可以查看数据库当中的内容,执行简单的插入和删除数据的操作。毕竟,很多时候,开发者使用数据库的理由是因为要提供一些所谓的“知识库”。
Kickstarter iOS客户端代码
ldehai   推荐   
非常值得学习
ibireme整理的github上iOS和Mac有用的开源库
ldehai   推荐   
学技术没有真正的捷径可走,有志于深入研究技术细节的,找几个有代表性的库仔细研读代码,功力会大增!这就是武林秘籍,代码不会说谎。
Getting started with iOS
ldehai   推荐   
StackOverFlow新推出的文档功能,从问答中提取出有用的教程。这一篇适合初学者入门。
ENJOY 工程 Swift 3 适配
ldehai   推荐   
Swift也出来几年了,但它一直在更新换代,就像婴儿一样处于茁壮成长期,几天不见就变样了。 转眼用老版本写的代码就不行了。作者给出的适配思路值得参考。 “最后,祝自己在 Swift 适配工程师这条道路上越走越远。不说了,继续去做适配去了。嗯,我还没去看 Swift 4 的相关变化。”
如何理解Delegate设计模式
ldehai   推荐   
Delegate又称为委托或代理,它是一种设计模式。委托大大减少了对象之间的耦合性。 Objective-C不支持多继承。但 Delegate 弥补了这个缺陷。 有了Delegate, 在声明对象时,可以使其遵循多个协议。 从而解决了多继承问题。
Block Or Delegate
ldehai   推荐   
即使 block 可以大幅度取代 delegate 處理 callback,但是從蘋果自己的 API 設計中可以看到,並不是所有的 delegate 都被 block 取代,在 Cocoa 與 Cocoa Touch framework 中,仍然大幅度使用 delegate。那麼,我們就要問:當我們在設計 API 的時候,什麼狀況下應該使用 block?什麼時候又該使用 delegate? 通常的區分方式是:如果一個 method 或 function 的呼叫只有單一的 callback,那麼就使用 block,如果可能會有多個不同的 callback,那麼就使用 delegate。
iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)
ldehai   推荐   
在iOS开发中,我们经常会遇到页面间跳转传值的问题。因为方法有多种,到底用哪一种呢?每次决策都会觉得是一种心理负担。 了解每一种实现方式适用的场景会帮助我们更快的作出决策。
Objective-C Block的实现方式
ldehai   推荐   
比起delegate(委托),Block的使用方式显得更直观。 有时候,同样的功能,用delegate和block都可以实现,如何选择就看自己的喜好了。
© 2018 AventLabs
关于  ·  联系我们  ·  苏ICP备15029312号   Thanks to V2EX  ·  我们开发的APP  ·