2015-11-01から1ヶ月間の記事一覧
"#FFFFFF"といった形式の文字列をUIColorに変換してくれるSwiftColorsを使ってみました。 github.com 使い方 UIColorのInitializerに16進数の文字列を渡すとそれに対応するUIColorを取得できます。 UIColor(hexString: "#AAAAAA") 小文字でも大丈夫です。 UI…
unsafeAddressOfという大域関数で取得できるようです。 普通に取得できました。 let obj = NSObject() print(unsafeAddressOf(obj)) // → 0x00007ff9c51054f0 代入した場合は同じ番地なので同じ値になります。 let obj = NSObject() let obj2 = obj print(un…
キャッシュにAwesomeCacheというライブラリを使ってるのですが、AwesomeCacheは標準でキャッシュ全削除の機能を持ってません。 クリアしたい場合はキャッシュのルートディレクトリを取得してディレクトリ毎削除する方式を使うと良さそうです。 import Awesom…
色の乗算とは Photoshopで出てくる概念で、色と色を重ね方の一つです。 赤と赤の乗算はより濃い赤になり、青と青ならより濃い青になります。 Photoshop Manual - [ 乗算 ] とは - by StudioGraphics Swiftで乗算した色の取得する 下のように取得します。 乗…
実際に呼ばれているか 確認した所呼ばれていました。 class MyClass { var arr = [String]() { didSet { print("didSet") // appendでも呼ばれた } } } let myClass = MyClass() myClass.arr.append("TEST") なぜSwiftの配列のappendでdidSetが呼ばれるか 理…
DateFormatter().shortWeekdaySymbolsで取得できます。 print(DateFormatter().shortWeekdaySymbols) // → ["日", "月", "火", "水", "木", "金", "土"] ○曜日という表記はweekdaySymbolsというメソッドで取れます。 print(DateFormatter().weekdaySymbols) …
ファーストクラス・コレクションという設計パターンについて調べてみました。 ファーストクラス・コレクションとは 配列をも全てクラスを作ってラップする手法です。 例としてProductsの配列を直接変数にせずに、ProductListというクラスを通して変数化する…
Tell, Don't Ask(求めるな、命じよ)という原則について調べてみました。 Tell, Don't Ask(求めるな、命じよ)とは クラスの役割についての原則です。 クラスを呼び出す側はAsk(求める事)はせずにTell(命令)だけするべきという原則です。 下書籍が出典のよ…
コマンドとクエリ分離原則と言う原則について調べてみました。 コマンドとクエリ分離原則とは 簡単に言うと、メソッドは 取得/更新 のどちらかだけを行うという原則です。 データの取得をする場合は更新を行わないしデータの更新をする場合は値を返さない。 …
オペランドの原則というものを学んだので書いていきます。 オペランドの原則とは オペランドの原則とは簡単に言うと「メソッドの引数にオプション的な値を入れない」という原則です。 下のようにテキストから文字列を検索するクラスを考えると、ignoreCaseは…
完全コンストラクタという概念を知ったのでその事について書いてみます。 完全コンストラクタとは インスタンスの初期化時に全てのプロパティーが決まってその後変化しないようにする事です。 具体的には下のようなクラスを指します。 valueの値は初期化時に…
今携わっているアプリの規模が大きくなってきたので、最近はクラスの分割をするようになってきました。 そこで「色々考えて分割はしているんだけどイマイチ何が正しいか分からない」って状態だったので答えを出す助けになりそうなオブジェクト指向についてち…
UILabelで文字の長さが変わる時のAutoLayoutの設定の仕方です。 実はUIViewはWidthの指定をしなければ文字数に合わせてWidthが変化してくれます。
objc_getAssociatedObject/objc_setAssociatedObjectを使ってUIViewにプロパティーを追加してみました。 追加は下のように行います。 var key = "key" extension UIView { var prop: String { get { return objc_getAssociatedObject( self, &key) as? Strin…
SwiftBondを試してみました。 github.com インストール CocoaPodsでインストールします。 podには"SwiftBond"でなく"Bond"と入れます。 platform :ios, "8.0" use_frameworks! pod "Bond" ViewとModelを繋いでみます ViewController, Storyboard, ViewModel…
新規アプリを作ってCocoaPodsを導入するのって地味にめんどくさいです。 ライブラリを試すために使い捨てプロジェクトを作る時とかは特にストレスです。 プロジェクトを作る コマンドでpod initしてPodfileを作成 Podfileを修正 コマンドラインでpod install…
UITextFieldでユーザーが何か入力した時のイベントを取る方法です。 shouldChangeCharactersInRange 方法は2つありまして、1つ目はUITextFieldDelegateのdelegateメソッドであるtextField:shouldChangeCharactersInRange:を使う方法です。 class ViewControl…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…
この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。 「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。 The Swift Programming Language (Swift 2.1…