hiragram no blog

iOSとか

iOS

iOSアプリのバックエンドにFirebase使ってみた感想

習作としてレシピのマスターデータがあってそれを作ったよというレポートをアプリから投稿できるようなやつを作ってみて感じたこと。 とりあえず動かすのが超簡単 コンソールからプロジェクトつくってキー発行してSDK入れて初期化すればDBにアクセスできて簡…

Segueを使わずにかっこよく画面遷移する方法を考えた

最近Segueをいかに安全に使って画面遷移するかということを考えていたけど、#swtwsを見ていてそもそもSegueを使わない/嫌いという人が結構いるんだなと思ったのでSegueを使わないで楽に安全に画面遷移する方法を考えてみたら意外といい感じになった。 Segue…

UITableViewのセクションの区切り線を消す

高さ1のviewを無視する系。 UITableViewCellのサブクラスでaddSubviewをオーバーライド。 override func addSubview(_ view: UIView) { if view.frame.height * UIScreen.main.scale == 1 { return } super.addSubview(view) } おわり。

registという単語が含まれていたらビルドエラーにするやつ作った

iOS その3 Advent Calendarの9日目の記事です。 最近、NGワード一覧みたいなのを定義しておいたらコンパイル時にそれがコード中に含まれていないかチェックして含まれてたらビルド落ちるように出来ないかな〜とか思って試してみた。 XcodeのBuild phaseの中…

ビルドターゲットがフレームワークの時にCommonCryptoをimportしたい

この記事はSwift Advent Calendar 2016の2日目です。 TL;DR 結局イケてる解決はできませんでした 前提 UIにかかわらない部分を切り離すため、Embedded Frameworkの仕組みを用いてモデル層を別モジュールにした API通信時にSHA256でトークンを作ってるところ…

"ReactiveCocoa vs RxSwift"の和訳

https://www.raywenderlich.com/126522/reactivecocoa-vs-rxswift - Functional Reactive ProgrammingはSwift開発者の間でますます人気が高まってきている方法論である。それは複雑な非同期処理のコードを書きやすく、理解しやすくすることができる。 この記…

xibからビューのインスタンスを生成するコードの治安を良くする

AwesomeView.xibからAwesomeViewのインスタンスを作りたい時、普通にUINibのイニシャライザを使って呼び出すと let awesome = UINib(nibName: "AwesomeView", bundle: nil).instantiateWithOwner(nil, options: nil).first as! AwesomeView こんなに治安が悪…

awakeFromNibのドキュメント読んだ

awakeFromNib https://developer.apple.com/library/ios/documentation/UIKit/Reference/NSObject_UIKitAdditions/#//apple_ref/occ/instm/NSObject/awakeFromNib ちゃんと理解してる自信がなかったので読んでみた。 Prepares the receiver for service afte…