&tag(iPhoneSDK, Objective-C, UIKit, three20);
*目次 [#j257e9c8]
#contents
*参考情報 [#qbfacefa]
iPhoneのUI関連の便利クラス集。ライセンスはApache License。
#pre{{
Three20 is a collection of iPhone UI classes, like a photo viewer, and general utilities, like an HTTP disk cache. Three20 is derived from the Facebook iPhone app, which is one of the most downloaded iPhone apps ever.
}}

-[[facebook's three20 at master - GitHub:http://github.com/facebook/three20]]…公式GitHub。
-[[Three20 JSON datasource implementation:http://revetkn.com/?p=62]]…解説サイト。
-[[Doxygen | iphoneアプリで稼げるのか:http://iphone.longearth.net/tag/doxygen/]]…使用例。
-上記サンプルは古いので[[Three20 JSON Example Project:http://revetkn.com/?p=72]]の下の方にあるGitHubリポジトリからダウンロードしたほうがいいかもしれない。
*ダウンロード [#fdbd05a6]
http://github.com/facebook/three20からダウンロード
 git clone http://github.com/facebook/three20.git
以下は自分用
 git clone git@github.com:src256/three20.git

*サンプル・TTRemoteExamplesのビルド [#aaaa101d]
http://github.com/klazuka/TTRemoteExamplesにすぐにビルドできるサンプルがある。
#pre{{
git clone http://github.com/klazuka/TTRemoteExamples.git
cd TTRemoteExamples
git submodule update --init
TTRemoteExamples.xcodeprojを開く
}}

*プロジェクトへの組み込み手順(2010/10/28(木)) [#m4127d44]

**参考情報 [#w8cb16da]
-[[公式サイト:http://github.com/facebook/three20]]…下の方に手順が乗っている。
-[[【Three20】をプロジェクトで使えるようにする手順 | iphoneアプリで稼げるのか:http://iphone.longearth.net/2009/05/17/%e3%80%90three20%e3%80%91%e3%82%92%e3%83%97%e3%83%ad%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88%e3%81%a7%e4%bd%bf%e3%81%88%e3%82%8b%e3%82%88%e3%81%86%e3%81%ab%e3%81%99%e3%82%8b%e6%89%8b%e9%a0%86/]]


**前準備[#ue3dd1b1]
Navigationベースでデモプロジェクトを作成。名前はThree20Demo。


**three20の組み込み [#q8f8cd52]
+ three20のgitプロジェクトからソースコードをダウンロードする。
 git clone http://github.com/facebook/three20.git
+ Finderでthree20/src/Three20/Three20.xcodeprojをThree20Demoプロジェクトの「グループとファイル」ペインにドロップ。
--「デスティネーショングループのフォルダに項目をコピーする」のチェックはオフ。
--参照タイプは「プロジェクトを基準」。
#ref(drop.jpg)
+Xcodeで先ほどドロップしたThree20.xcodeprojを新たに開く。「Dependencies」グループを開き、そこにあるxcodeprojファイルを全て、Three20Demoにドロップする。Three20Demoプロジェクトには次のリストが追加された状態になる。
#pre{{
Three20Core
Three20Network
Three20Style
Three20UICommon
Three20UINavigator
Three20UI
Three20
}}
+Three20のstaticライブラリをプロジェクトにリンクする必要がある。サイドバーで追加したプロジェクトを選択する。右側の詳細タブにlibThree20.aやlibThree20Core.aのようなライブラリファイルがたくさん見えるので、一番右側にあるチェックボックスをチェックする(UnitTest以外)。これによりThree20フレームワークのそれぞれの部分をプロジェクトにリンクすることになる。
+Three20のstaticライブラリをプロジェクトにリンクする必要がある。サイドバーで追加したプロジェクトを選択する。右側の詳細タブにlibThree20.aやlibThree20Core.aのようなライブラリファイルがたくさん見えるので、それぞれの行の一番右側にあるチェックボックスをチェックする(UnitTest以外)。これによりThree20フレームワークのそれぞれの部分をプロジェクトにリンクすることになる(libThree20-Xcode3.2.5.aのように末尾にXcodeがついたのはチェックしない?)。
+Three20の依存関係を追加する必要がある。サイドバーの「ターゲット」セクションを開き、ターゲットをダブルクリックする。一般タブの直接依存関係で"+"ボタンを押し、「Three20」とその他のlibファイルを選択しターゲットに追加を押す。
+画像と文字列バンドルを追加するには、「three20/src」以下にあるThree20.bundleをThree20Demoプロジェクトにドロップする。
--フォルダ参照を作成するにチェック。
--コピーするのチェックを外す。
--参照タイプは「プロジェクトを基準」。
#ref(drop2.jpg)
+QuartzCoreフレームワークをプロジェクトに追加する。
+プロジェクトの設定でビルドタブを選択し、「ヘッダ検索パス」にthree20/Build/Products/three20を追加(相対パスになるようにする)。
+ビルドタブで"他のリンカフラグ"に"-ObjC"と"-all_load"を追加。
+#import "Three20/Three20.h" できるようになる。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS