NSBlogger

意識高いブログ

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

iOSアプリ開発におけるイースターエッグのすすめ

はじめに この記事はiOS Advent Calendar 2015 - Qiita 19日目の記事です。 昨日はhachinobuさんのMVVMっぽい構成のデモアプリを公開してみるでした。 本日はイースターエッグについて。 イースターエッグとは簡単にいうと隠し機能のことです。余裕のある開…

iOS9対応でやろうと思っていることまとめ

iOS9がそろそろでます iOS9が今月半ばに登場するので、それに向けてiOS9対応をする必要があります。 例年の通りだと、来年にはiOS9SDKでビルドしていないものは審査すら出せなくなります。 iOS8対応済みのアプリに対してiOS9対応する際にやろうと思っている…

iOSアプリの64bit対応でやったことまとめ

2015年06月より64bit対応必須に そういえば今月から64bit対応が必須になりました。アプリ申請時に64bit対応していないと自動的にはじかれます。64bit対応なんてすぐ終わるやーと思っていたんですが、なんだかんだ2週間くらいかかってしまいました…。やったこ…

WWDC2015で発表されたiOS9 Search APIsまとめ

Search APIs iOS9から「Search APIs」というのが登場します。これはSpotlightで色んな情報を検索でき、Spotlightからアプリにスムーズに遷移できるものです。たとえば、「東京駅」と入力すると地図アプリが推奨され、タップすると現在地から東京駅までのルー…

iOS7以降でUITableViewCellをカスタマイズするときに気をつけること

iOS7以降のUITableViewCell UITableViewのセル単体を管理するためにUITableViewCellを使います。iOS7以降になると標準のUITableViewCellの左端に微妙な隙間ができました。UITableViewCellをカスタマイズせずにそのまま使う場合は問題ありませんが、カスタマ…

UIImageがベタ塗りされたときの対処法

UIImageがベタ塗りされる ちゃんと画像を指定しているのに、真っ白になったり真っ黒になったり画像が1色でベタ塗りされたことがありました。そういえば、iOS7対応したときにいろんな画像が青色にベタ塗りされた記憶が…。ということで調べてみた結果が下記で…

AutoLayoutとうまく付き合うコツ

AutoLayoutと仲良くなった ぜんぜん言うこと聞かないからAutoLayout大嫌いだったんですが、接し方を変えたら言うこと聞くようになったので、そのコツを紹介します。

Images.xcassetsでアプリのアイコンから光沢を消す

Images.xcassets Xcode5から画像を一元管理できる仕組みとしてImages.xcassetsが登場しました。9Sliceも簡単に設定できたり便利です。 アイコンに光沢が… Images.xcassetsに画像を全部移行した後、アプリをインストールするとなぜかアプリのアイコンに光沢が…

UIWebViewで特定のURLの末尾にパラメータをつける

UIWebViewでページを読み込む前のイベントをキャッチ - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { //WebView内のロードする前に呼ばれる } UIWebV…

Watch Kit AppとiPhone App間でNSUserDefaultsを使ってデータ共有をする

Watch Kit AppとiPhone Appのデータは別管理 基本的にWatch Kit AppとiPhone Appがそれぞれ保持するデータ領域は別々に管理されています。したがって、下記の設定を行わずにNSUserDefaultsを使ってみると、Watch Kit Appで保存したデータはWatch Kit Appから…

WatchKit AppからiPhone Appを起動する方法

Watch App側の実装 [WKInterfaceController openParentApplication:@{} reply:^(NSDictionary *replyInfo, NSError *error) {}]; WKInterfaceControllerのopenParentApplication:reply:メソッドを使うことでiPhone側の親アプリを起動することができます。現…

iOS Simulatorの調子が悪くなったときにやること

iOS Simulatorが調子悪いとき たまにXcodeでアプリを実行したとき、iOS Simulatorにアプリのインストールができなくなることがあります。 「Unable to run app in Simulator. An error was encountered while running (Domain = LaunchServicesError, Code =…

AFNetworkingでメモリリークが起こったときの対処法

AFNetworking Objective C のライブラリで超ど定番なHttpClientです。いまさらながら使い始めました。AFNetworking/AFNetworkingAFNetworking/AFNetworking · GitHub メモリリーク AFNetworkingのラッパーを作って既存のAPIとの通信をすべて置き換えました。…

XCTestExpectationの「API violation」エラーの解決策

XCTestExpectation XCTestで非同期通信処理をテストしたいときに使えるクラスです。 XCTestExpectation *expectation = [self expectationWithDescription:@"successfully load image"]; [self.imageLoader getRequest:@"http://dummy.jpg/" success:^(UIIma…