emahiro/b.log

日々の勉強の記録とか育児の記録とか。

Swift

UIRefreshControlの実装でハマったところ

目次 unrecognized selector sent to instance のエラーが出た時 Cannot override with a stored property refreshControl unrecognized selector sent to instance のエラーが出た時 RefreshControlを使ってSwipe & Refreshを実装しようとした際に、 unreco…

Computed Property で for を使った構文を map を使った構文へ書き換える

computed property内でforを使った実装をしていた部分をmapを使ったswiftらしい構文へ書き換えました。 変更対象コード var isSuccess: Bool { for q in questions { if !q.isSuccess { return false } } return true } 変換第一段階は以下 var isSuccess: B…

プロトコルでのオプショナルなインターフェースを作る。

Protocolの定義 宣言したインターフェースは継承先のクラス、もしくはプロトコル、構造体で、宣言必須。 とはいえ、必要ないインターフェースは継承先で記述省きたいとも思う。 そこでswiftで使えるオプショナルなインターフェースについて調べてみた。 オプ…

swift学習ログ「タプル」

swiftのタプルについて 公式リファレンス呼んだ備忘録 php, rubyと経験してきて、swiftを学習し始めてから「tuple」という概念を知ったのでまとめます。 タプルとは? タプル(tuple)とは、複数のものからなっている組の構成要素数を表している集合数詞である…

iOS開発の学習に際して意識したこと

年明けから業務でiOS開発を担当することになったので、ここ一ヶ月半で何をして何をしなかったのかを書きます。 目標 一ヶ月でiOS開発に必要な知識のベースをつける キャッチアップしないと行けなかったこと Swift Xcode Cocoaプログラミング Rx (含むリアク…

UIStackViewの削除に関しての追加学習

以前書いたカスタムUIStackViewクラス内の子要素を削除するの追記 removeArrangedSubview() (UIView).removeFromSuperView の動作の違いとなぜ2つのメソッドを使わないと完全に削除できないのかということについて。 removeArrangedSubview https://develope…

PhotoLibraryから画像を選択して画面に描画する実装

画像を選択してUIImageに表示させるという処理を実装します。 手順 UIImagePickerControllerDelegate と UINavigationViewControllerDelegate を実装したViewControllerに継承させます。 UIImagePickerControllerDelegate...UIImagePicler → Libraryから画像…

コードからTableViewのeditボタンを生成する

UINavigationViewControllerをEnbedInしている状態で編集ボタンをコードから生成する。 navigationItem.leftBarButtonItem = editButtonItem これで該当NavigationControllerを設置している箇所に対して、左上に編集ボタンを配置できる。 また、TableViewCon…

NSCodingのinitについて

さまり Jump Right In でNSCodingを初期化する時に required と convenience を使って初期化している意図がわからなかったので調べた話 NSCodingの初期化について 公式のリファレンス https://developer.apple.com/reference/foundation/nscoding/1416145-in…

UIViewControllerのprepareメソッドについて

さまり prepareメソッドが理解できずにいた件 swiftの外部引数と内部引数について prepareメソッドが理解できずにいた件 prepare(for: ,sender:)メソッドがなかなか理解できずにいて、ようやく理解したので、その備忘録です。 まずprepare(for: ,sender:)に…

カスタムUIStackViewクラス内の子要素を削除する

UIStackViewとは? iOS9から導入された概念 UIView郡をUIStackView内に入れ子として管理できる。 UIStackViewが親でUIButtonなどの各UIパーツが子要素になる。 Apple公式チュートリアル内でボタンを削除する JumpRightIn 対象となるコードはこちら(抜粋) pri…

Bundleを使った画像のロードとキャッシュ from Apple公式チュートリアル

AppleのiOS開発の公式チュートリアルに記載されている画像の読み込みについての備忘録。 画像はAssetsに入っているものとし、アプリ内で保持している画像を読み込むという前提。 対象箇所 Appleの公式チュートリアル「JumpRightIn」での画像を指定している箇…