bekkou68 の日記

Gogengo! や IT 技術など。

Dash で Objective-C の API をラクラク見る(Docsets がない場合のインストール手順)

ドキュメントを高速検索できるマスコットキャラの猫がとてもキュートな Dash のご紹介です。

  • Dash をインストール
  • Dash で Dash > Preferences > Docsets に表示されていないことを確認する
  • XCodeXCode > Preferences > Downloads > Documentationタブ で iOS 5.x Library の Installボタンを押下する
  • 先ほどの Docsets において Rescan する(右下の丸い矢印のボタンを押下する)
  • iOS 5.x Library が表示されたらOK。検索できるようになってる

(=^・・^=) べんり!

XCode/Objective-C 開発メモ 2

引き続き自分用 Tips です。コーディングのメモとか感想とかごちゃまぜです

  • Objective-C の入門PDF
  • @property (weak,...) hoge; と定義して @interface ViewController : UIViewController { UIToolbar *toolBar; } と書いたら怒られた。__weak を toolBar の前につけたら直った。ARC のメモリの管理の仕方の定義は書く必要があるのかな。あとで調べる
  • アクションシートは、下からにゅっと出てくる確認用のモーダルウィンドウのようなやつ
  • ARC を有効にしている状態で autorelease などを呼ぶとエラーになる。呼ぶ必要はない。
  • XCode のフォントは Migu 1M 16px あたりが好き。Command + , して Font から設定できる
  • XCode の補完は Eclipse みたいに頭文字をたたいてはできないのかなあ。できたら便利
  • XCode において補完候補が出ている状態で Enter で確定、Tab で次のキャメルまで確定
  • Titanium のありがたみが分かってきた。Objective-C はクラス名長いなあ。書くコードの量おおいなあ
  • グラフィックコンテキストはメモリ上に作成できる。それによってオフスクリーンで描画できる
  • ARC が有効時に CFRelease() は必要? → 必要そう。あとで調べる。
  • nil と NULL の違いは何?
  • 画像処理をするとき。UIImage では各ピクセルは操作できない。操作するには CGImage オブジェクトをつかう。CGImage オブジェクトから CGDataProvider オブジェクトを取り出し、そこからさらに CFData オブジェクトをとりだし、そこからビットマップデータのポインタを取得するという手順をふむ。Titanium だとこういう画像処理は苦手

関連エントリ

XCode/Objective-C 開発:CocoaPods でライブラリをインストールする

はじめに

XCode/Objective-C で開発していてライブラリを使いたくなりました。手作業でやる方法もあるのですが、その手間を CocoaPods が省いてくれると聞いて試してみました。CocoaPods は Bundler や maven のような位置づけだと思っています。

インストール手順(2014年3月26日 更新)

手順は『CocoaPods ではじめる Objective-C ライブラリ管理 (1) - Watsonのメモ』を参考にさせていただきました!

  1. CocoaPods/Specs に使いたいライブラリが登録されていることを確認する。今回は NYXImagesKit を選びます
    • もし登録されていなかったら ``$ pod spec create [lib_name]`` で spec をつくれる。spec は CocoaPods のライブラリの管理単位。詳しくは公式ドキュメントを参照
  2. $ gem install cocoapods
  3. $ pod setup
    • ~/.cocoapods がつくられる。CocoaPods はこのディレクトリでライブラリを管理する
  4. 実際につかってみる。確認用の XCodeプロジェクト(以下、myproject と呼ぶ)を作成する
  5. myproject.xcodeproj/ の存在するディレクトリに Podfile を作成する。次のような感じ
    • platform :ios
      pod 'NYXImagesKit'
  6. $ pod install
  7. 作成される myproject.xcworkspace/ は、ライブラリがリンクされたプロジェクトになっている
  8. XCode で .xcodeproj を開いているなら .xcworkspace に開き直す(XCode を再起動すると確実。ただし Command+Q して再起動すると .xcodeproj のあとに .xcworkspace が開いて開けないこともあるので注意)
    • (ハマりポイント:.xcodeproj のままで Run を押したらエラー "ld: library not found for -lPods" が起きた)
  9. XCode 左上の "Pod > iPhone 5.0 Simulator" を "myproject > iPhone 5.0 Simulator" に変更して Runボタンを押す
    • (ハマりポイント:"Pod > iPhone 5.0 Simulator" のまま Run するとビルドは成功するがシミュレータが立ち上がらなかった)
  10. シミュレータが立ち上がったらひとまずOK
  11. ライブラリの呼び出しを書いたらちゃんと動きました! やったね!
    • ViewController.h に #import "NYXImagesKit.h" などと書くとライブラリが読み込まれます

快適な CocoaPodsライフをお過ごしください ^ω^