読者です 読者をやめる 読者になる 読者になる

UICollectionViewで縦横両方向にスクロールさせる

環境: Swift3 コレクションビューで縦横どちらにもスクロールさせることはできるか調べてみた。 どうやら基本的には縦横どちらかの方向にしかスクロールできないようだ。 コレクションビューではUICollectionViewLayoutを継承したクラスでレイアウトを管理す…

Font Awesome を Xcode で使用する

環境: swift3 fontawesome.io FontAwesome をXcodeにカスタムフォントとして取り込んで使用する方法。 以下からFontAwesome.otfをダウンロードする https://github.com/FortAwesome/Font-Awesome/blob/master/fonts/FontAwesome.otf Xcode のプロジェクト内…

SwiftでON・OFFの切り替えをする円形ボタンを作る

環境: Swift3 こんな感じの円形ボタンのカスタムビューを作る。 ボタンというよりUISwitch的なON・OFFの状態切り替えをさせたい。 UIControlを継承して、状態はisSelectedプロパティで保持している。 import UIKit import PlaygroundSupport final class Cir…

Storyboardを使ってUITableViewを組み立てる場合のテンプレート(Swift3)

環境: Swift3 よく使うのでコピペ用にメモしておく。 ViewController import UIKit class ViewController: UIViewController { var items: [String] = ["foo", "bar", "hoge"] @IBOutlet weak var tableView: UITableView? override func viewDidLoad() { su…

UIWebViewのリクエストにUserAgentを設定する

環境: Swift3 UIWebViewのリクエストにUserAgentを設定するには、リクエスト前にUserDefaultsのregisterメソッドでキー名UserAgentで値をセットする必要がある。 UserDefaults.standard.register(defaults: ["UserAgent" : "hoge"]) この時、 // これだと設…

UserDefaultsのregisterDefaultsメソッドについて

環境: Swift3 UserDefaultsのregisterDefaultsメソッドについて勘違いしていたのでメモ。 // Swift3 で registerDefaults() から register(defaults: ) に変更になった open func register(defaults registrationDictionary: [String : Any]) このregisterメ…

UserDefaults に保存されているデータをすべて表示する

環境:Swift3 UserDefaults に保存されているデータをすべて表示する for (key, value) in UserDefaults.standard.dictionaryRepresentation().sorted(by: { $0.0 < $1.0 }) { print("- \(key) => \(value)") } または if let appDomain = Bundle.main.bundle…

プッシュ通知受信時に呼ばれるメソッドについて

環境: Swift2.3 前提となるCapabilitiesの設定 - Push Notifications -> ON - Background Modes -> OFF プッシュ通知受信時に呼ばれるメソッド プッシュ通知受信時に呼び出されるメソッドに 1. application:didReceiveRemoteNotification:と 2. application:…

いつも設定するAppearanceのメモ

環境: Swift2.2 iOS8以降対象 いつも設定している Appearance のコピペ用メモ。 以下を AppDelegate で呼ぶ。 mainColor は extension で独自に設定したもの。 private func setupAppearance() { // アプリケーション全体のtintColor設定 self.window?.tintC…

SwiftでTupleとCaseを組み合わせて使う

環境: Swift2.2 タプルとcaseを組み合わせて使うと便利だったのでメモ。 Switch(case)文で使う オプショナル型な複数の値の組み合わせで場合分けしたい場合に使う。 また値はアンラップして取り出して変数にバインドする。 ポイントはcase部分で「?」をつけ…

SwiftでDEBUG Macroを使う

環境: swift2.2 Xcode7.3.1 Swiftで以下のようなDEBUG Macroを使いたい。 #if DEBUG print("DEBUG") #elseif STAGING print("STAGING") #else print("ELSE") #endif Objective-C の場合はPreprocessor Macrosに設定していたが Swift ではOther Swift Flagsの…

SwiftでオブジェクトをNSUserDefaultsに保存する

環境:swift2.1 NSUserDefaultsにオブジェクトのまま保存したかったが、保存できるオブジェクトはNSArray, NSDictionary, NSString, NSNumber, NSDate ,NSDataに限られていた。 調べたところ、オブジェクトをNSDataに変換できることがわかった。 NSDataにで…