setoya-blog

システム開発技術、データ分析関連でお勉強したことや、山奥生活を綴る、テンション低めなブログです。

Objective-C

Xcode5でCommand Line Toolsのインストール

前は、環境設定画面からダウンロードできたけど、ターミナルから入力してインストールする方法に変わったらしい。 $ xcode-select --install

cocoapodsのspecリポジトリを修復する

2014年1月30日に、github上のcococapodsのspecリポジトリが壊れるという事件が起きたらしい。この状態でいつもの流れで、pod installをすると、ローカルのspecリポジトリとの不整合が起きて以下のようなエラーが出た。 Pull is not possible because you hav…

Objective-CでネストしたDictionaryの値をパスを指定して、取得する

{ "firstlayer": { "secondlayer": "value" } } のようなJSONからNSDictionaryを作ったとき [dict valueForKeyPath: @"firstlayer.secondlayer"]; みたいに、NSDictionaryの階層を一気に指定して値を取得できるのを知って便利だった。 元ネタは、QiitaObject…

UIDatePickerで昨日以前の日付を選択できないようにする

これだけ。 _datePicker.minimumDate = [NSDate date];

cocoapodsでローカルのリポジトリを参照する場合にコミット番号を指定する

pod ZKSforce :git => 'hogehoge.git', :commit => 'abalkflas' のようにコミット番号を指定しておけば、ローカルリポジトリのソースが更新された時にも最新のコミット番号を指定し直すことで、最新のソースを参照できる。

iOS7にアップデートしたときにナビゲーションバーがおかしくなった場合の対応

self.navigationController.navigationBar.translucent = NO; を入れる

iOSのUIActivityViewControllerにカスタムアクティビティを追加する

iOS6からFacebookなどへのシェアもiOSがサポートするようになりましたが、独自に開発しているアプリでもあのビューを使って、オリジナルのアクションを追加したいときがあります。要するに以下の画像の「SoundCloud」ようなアクションを追加したい。これには…

Xcode4でCoreDataの自動マイグレーションを使う

既にリリースしたアプリケーションでCoreDataを使っていて、既存のSQLiteのテーブルにカラムを追加したいときがある。DBがクライアント側にあるので、Railsみたいに簡単にはマイグレーションできないだろうと思っていたけど、簡単なマイグレーションなら自動…

iOS6からpresentModalViewControllerはdeprecatedに

iOS6で、presentModalViewControllerがdeprecatedになっていて、警告がでる。iOS5から使えるpresentViewControllerを使えばよいらしい。 [self presentModalViewController: viewController animated:YES]; これが警告がでるので、 [self presentViewControl…

iCloudのDocumentデータを手動で削除する

iCloud: Managing your iCloud storageに載っている。システム環境設定のiCloudの右下の管理から手動で消せる。

ここ数日の読書

iOS開発におけるパターンによるオートマティズム作者: 木下誠出版社/メーカー: ビー・エヌ・エヌ新社発売日: 2011/02/09メディア: 単行本購入: 10人 クリック: 286回この商品を含むブログ (18件) を見る 本のタイトルは仰々しくてあまり好きじゃないけど、内…

読書

iOSデバッグ&最適化技法 for iPad/iPhone作者: 國居貴浩出版社/メーカー: 秀和システム発売日: 2010/11/25メディア: 単行本購入: 10人 クリック: 106回この商品を含むブログ (22件) を見る デバッグ&最適化手法といいつつも、最適化の話はそんなに多くない。…

また読書

iOSデバッグ&最適化技法 for iPad/iPhone作者: 國居貴浩出版社/メーカー: 秀和システム発売日: 2010/11/25メディア: 単行本購入: 10人 クリック: 106回この商品を含むブログ (22件) を見る 以外と分かりやすい。各種ツールの使い方が載っているのがよい。 N…

Objective-CでSHA1

Cocoa with Love: Base64 encoding options on the Mac and iPhone この記事によるとObjective-CでSHA1を使うときは、iOSでなければopensslのライブラリを使うのが普通らしい。iOSではAppleが提供している以外のライブラリは使っては行けないという制約があ…

本日の読書

発売されていた本と前から気になっていた本を購入。iOS4のAssetLibrary便利そう。 iOS4プログラミングブック作者: 畑圭輔,加藤寛人,坂本一樹,藤川宏之,高橋啓治郎,沖田知彦,柳澤昇出版社/メーカー: インプレスジャパン発売日: 2011/01/27メディア: 単行本(…

ひたすら実装

Javaはそらで色々かけるんだけど、Objective-Cはまだ文法確認しながらだなー。 なんだかんだ言って、逆引きハンドブックが一番いろんなことがコンパクトにまとまっているので、文法の確認さえもこの本をみてしまう。 Objective-C逆引きハンドブック作者: 林…

モバイルマルチプラットフォーム開発のお勉強

とりあえず、本を読む。 iPhoneアプリケーション開発ガイド ―HTML+CSS+JavaScript による開発手法作者: Jonathan Stark,増井俊之,牧野聡出版社/メーカー: オライリージャパン発売日: 2010/08/07メディア: 大型本購入: 19人 クリック: 559回この商品を含むブ…

Objective-Cでの単体テスト(Unit Test)の実装方法

Xcodeに標準でテスト用のフレームワークがインストールされているので、それを使う。 アップルの公式iOS開発ガイド(PDF)にもやり方は記載されている。 ロジックテスト アプリケーションテスト の2つのテストのやり方があり、ロジックテストのほうがいわゆ…

自分で開発したアプリケーションからSafariや電話を起動する

自分で開発したアプリケーションからSafariや電話を使用したいときは、UIApplicationクラスがサポートしているopenURLを使用する。 NSURL *url = [[NSURL alloc] initWithString:@"http://d.hatena.ne.jp/sessan/"]; [[UIApplication sharedApplication] ope…

UIKitのお勉強

かなり、乱暴な説明だけど、UIKitはStrutsでInterfaceBuilderがSpringだな。 あと、関係ないけど、Mac OS XのChromeのTextAreaで入力中にCtrl+Mで改行できてすばらしい。 iPhone SDK アプリケーション開発ガイド作者: Jonathan Zdziarski,近藤誠(監訳),武舎…

Xcodeのコード署名を変更する方法

デフォルトだと、連絡帳に記入してある名前と会社名が使われるが、別に会社で作っている訳ではないので変更したいと思い調べた。 やり方は、ここに載っていた。 ホームディレクトリの設定ファイルに設定されている値が使われるみたい。設定がないときは連絡…

iOS SDK Hacks

買ってきて流し読み。 たしかにHackっぽい。描画の高速化やUIを操作するテストの自動化など参考になった。 すぐに読み終わる。 iOS SDK Hacks ―プロが教えるiPhoneアプリ開発テクニック作者: 吉田悠一,高山征大,UICoderz出版社/メーカー: オライリージャパン…

Objective-C 2.0読書

詳解 Objective-C 2.0作者: 荻原剛志出版社/メーカー: ソフトバンククリエイティブ発売日: 2008/05/28メディア: 大型本購入: 51人 クリック: 556回この商品を含むブログ (151件) を見る 柏の図書館で借りてきたObjective-C 2.0の続きを読んだ。 来週までしか…

詳解 Objective-C 2.0を図書館で借りてきた

久々に柏キャンパスに行き、図書館でObjective-C 2.0を借りてきた。 流し読み。 詳解 Objective-C 2.0作者: 荻原剛志出版社/メーカー: ソフトバンククリエイティブ発売日: 2008/05/28メディア: 大型本購入: 51人 クリック: 556回この商品を含むブログ (151件…