Protocol


February 3, 2017

RxSwiftでUITableView/UICollectionViewのbindを強化する

RxSwiftで良くDataSourceもしくはあるデータの配列をUITableViewやUICollectionViewにbindさせる時に それをより安全にしたり、bindしつつcellに必要なパラメータを渡せるようにパワーアップさせてみます。 ちなみに例ではRxDataSourceは使わず、データの入った配列をbindする想定でやっていきます。 ... Read more

May 5, 2016

StoryboardからViewControllerを生成するProtocolを今更ながら出来る限り綺麗にまとめてみた

昨日今日で自分用のSwiftライブラリの整理をしている中で、 StoryboardからViewControllerを生成するProtocol をリファクタリングしつつ綺麗にまとめたので、記事にしてみようと思います。 この、 StoryboardからViewControllerを生成するProtocol 自体は前から色々な人がQiita等にまとめていて、物によっては structやenum を活用した方法もあったりします。 そうした記事を参考に自分も自分が扱いやすいようにProtocolを作って運用していましたが、改めてリファクタリングしてより扱いやすくまとめたので、紹介してみようと思います。 ソース public protocol StoryboardInstantiatable { static var storyboardName: String { get } static var viewControllerIdentifier: String? { get } static var bundle: NSBundle? { get } } extension StoryboardInstantiatable where Self: UIViewController { public static var storyboardName: String { return String(self) } public static var viewControllerIdentifier: String? { return nil } public static var bundle: NSBundle? { return nil } public static func instantiate() -> Self { let loadViewController = { () -> UIViewController? ... Read more

written by sgr-ksmt