TrelloNavigation 0.9.2

TrelloNavigation 0.9.2

测试已测试
Lang语言 SwiftSwift
许可协议 MIT
Released上次发布2015年11月
SPM支持 SPM

DianQK 维护。



  • DianQK

TrelloNavigation

https://dribbble.com/shots/2114816-Trello-Navigation

我非常喜欢 SergioChan 用 Objective-C 编写的 SCTrelloNavigation,所以我尝试用 Swift 重新编写了一次。

预览

环境

  • Xcode 7.1+
  • iOS 8+

简介 & 使用

API 和代码结构与 SCTrelloNavigation 有一定的区别,定制化更好一些,所以使用时编写的代码会更多一些。但使用起来仍然是超级简单,就像使用 UITableView 一样。

初始化

trelloView = TrelloView(frame: CGRect(x: 0, y: 0, width: ScreenWidth, height: ScreenHeight), tabCount: 5, trelloTabCells: { () -> [UIView] in
            return [
                TrelloListTabViewModel.tabView("BACKLOG", level: 3),
                TrelloListTabViewModel.tabView("BRIEFS", level: 5),
                TrelloListTabViewModel.tabView("DESIGN", level: 2),
                TrelloListTabViewModel.tabView("USER TESTING", level: 4),
                TrelloListTabViewModel.tabView("USER TESTIN", level: 1)
            ]
        })

只需要设置 tab 的数量和对应 tab 的视图。

注意:tabCount 需要和 tabCell 数量保持一致。

设置 delegate 和 dataSource

trelloView.delegate = self
trelloView.dataSource = self

就像使用 UITableView 一样,实现相应的协议即可~

将数据挂在 tableView 上

因为使用了多个 tableView,所以为了区分不同 tab 的数据,我这里将数据放在了对应的 tableView 上。当然,您也可以使用其他您喜欢的其他方法,如果您有更好的想法,欢迎提交拉取请求(PR)。

小贴士

项目中 TrelloAnimate、TrelloDefine、TrelloFunction、TrelloListTableView、TrelloListTabView、TrelloListView、TrelloView、UIViewExt 是必要文件。

出于安全考虑,挂在 tableView 上的数据必须在数组中声明类型,最好不要直接改为 AnyObject 。:]

如果您对 Swift 或者函数式编程很感兴趣,欢迎阅读源码一起学习。:]

许可协议

MIT