2018-01-01から1年間の記事一覧

Storyboard よりも Xib を使いたい理由

これは Aizu Advent Calendar 2018 の 7日目の記事です。 6 日目は id:acomagu さんで、8 日目は id:NoahOrberg さんです。 adventar.org はじめに Interface Builder (以下「IB」という。) で UIViewController のレイアウトを組むには、 Storyboard と Xib…

HLS形式の動画から字幕を取得する

HLS形式の動画から字幕情報を取得する機会があり、その実装を試みたがハマった。調べた限りこれに関する記事が無かったため、今回は記事として残す。 字幕情報を取得するには? AVPlayerItemLegibleOutput を使用する。 AVPlayerItemLegibleOutput は、デリ…

NOCで1位入賞しました

NOCとは NOC(Native OSS Competition) とは、株式会社サイバーエージェントさん主催の、ネイティブ向けOSSライブラリを作るコンペティションです。今回はUI編ということで、UIに関わるOSSライブラリを作ることがテーマで、10/20(土)-10/21(日)の2日間に開催…

スカラシップスポンサー枠でiOSDCに参加してきた

8/30(金)~9/2(日)の4日間、早稲田大学で開催されたiOSDC Japan 2018に参加してきました。今回は、そのレポート記事となります。 今回は、Wantedlyさんが募集していた学生応援プログラムに採択して頂き、スカラシップスポンサー枠で参加させていただきました…

三ヶ月間のHaskellセミナーを終えて

Haskellセミナーについて 本年度から学部三年になり、研究室に配属された。私の研究室では、関数型言語を用いて卒業研究を行うことになっており、学部三年生は基礎としてHaskellの学習をすることになっている。 特に前期は、「プログラミングHaskell」という…

RxSwiftでUIPickerViewとUITextFieldのテキストをバインドする

最近RxSwiftの勉強をしていて思いついたバインドをやってみる。 UIPickerViewからデータを選択し、そのデータをUITextFieldのテキストにセットするものである。 UIPickerViewをUITextFieldの入力として使用する まずUIPickerViewをUITextFieldの入力のViewと…

CharacterSetを定義する

CharacterSetとは 言葉通り文字の集合である。Appleのドキュメントにも書いてあるが、文字列の中から特定の文字を検索したいときなどに使う構造体。自分も以前そのような用途で使ったことがある。 CharacterSet - Foundation | Apple Developer Documentatio…

NSCodingをSwiftyにしてみる

NSCodingについて Swiftにはクラスをシリアライズ, デシリアライズするためにNSCodingが用意されている。 そのクラスをシリアライズ, デシリアライズするには、NSCodingに準拠させ、2つのメソッド(func encode(with aCoder: NSCoder)とinit?(coder aDecoder:…

Swiftで型推論を使っていきたい

省略について Swiftには型名.varibaleHogeと書くところを型がわかっている場合は.varibaleHogeと書ける。 例えば以下のような感じ。 // textAlignmentはNSTextAlignment(enum)で、centerが定義されている UILabel().textAlignment = .center // centerはCGPo…

UITextFieldを空の状態からデリートキーを検出する

文字入力の検出 まずUITextFieldにおいて文字入力を検出するには主に2つの方法がある。 一つはUITextFieldDelegateを準拠し、textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Boolを…

Xcodeの画像、色リテラルを使う

画像、色リテラルとは 名前の通り画像や色をリテラルとして扱えるようにしたもの。Xocde8からの機能だが使っておらず、最近使い始めたので紹介する。 画像リテラル アセットに登録した画像名をタイプすると、その画像をプレビューしたリテラルが補完に出てく…