Jeffsuke is not a pen.

🏊‍♂️🚴‍♂️🏃‍♂️💻📱

iOSの、画面遷移時のメモリリークが止まらなかった話

先日、画面遷移時にメモリが開放されず、徐々にメモリ利用率が上昇する現象に苦しまされた。 Instrumentsで調べてみても、リークは見られなかった。何が問題だったのか。それはdispatch_afterを用いたループするアニメーションだった。 dispatch_afterや、NS…

UINavigationControllerの戻るを消し、別のボタンで戻る

ViewDidLoadにて以下のメソッドを呼ぶ。 UINavigationController上の戻るボタンが消える。 [self.navigationItem setHidesBackButton:YES]; 対象となるIBAction内で以下を呼ぶ。 [self.navigationController popViewControllerAnimated:YES]; 結果、以下のよ…

Today Extensionを実装してみた。

Today Extensionはウィジット Today ExtensionはiOS8から導入されたウィジットを通知画面に設置する機能です。アプリの機能を拡張するExtensionの一つです。あまりに情報が少なくてハマったので、ブログに書いておきます。 Appleのドキュメントが一般公開さ…

SwiftでUIBlurEffect実装してみた

SwiftでUIBlurEffectを実装してみた。 iOS7の登場と共に複数のライブラリが出現した。 iOS-blur FXBlurView ios-realtimeblur iOS8では、動的にぼかしエフェクトを生成できるUIBlurEffectが追加されたため、今後はこれが主流になってくるだろう。 import UIK…

えー、マジBoxen!?Boxenが許されるのは2013年までだよね!

Brewfile+brew-caskでラクラクセットアップ 新しい開発環境を頂いたので、セットアップすることに。 毎回セットアップするのは、プログラマーの3大美徳 (怠惰・短気・傲慢)に反するので、自動化することに。 OSの再インストール 再起動時にcommand+R長押し…

Xcodeにて、SchemeのデバイスがMy Mac 64-bitしか選択できなくなった時の対処法

Xcodeを使っていて、よくSchemeのデバイスがMy Mac 64-bitしか選択できなくなる。 アプリのBundleIDをXcode上で変更した時などに発生する。 また、iPhone用ビルドを実施するのは非常に簡単。 まず、Edit Schemeを立ち上げる すると、RunのExcutableがNoneに…

Objective-CとTDD

このエントリーは、TDD Advent Calendar 2013 の 6日目です。 ある日友人に「iOSアプリを作る人はあまりユニットテストしない」と言われた。自分もあまり書いた事はなかった。よく職場とかで言われるのは、 ユニットテストを書く工数>受けられる恩恵 iOSア…