投稿

12月, 2014の投稿を表示しています

[Xcode6] Storyboardもxibも使わないプロジェクトを作る

イメージ
Xcode のテンプレートを利用すると便利だと思うんですよね。 けど、何をやっているのかよく分からない。 ってことで、ここはあえて、storyboardもxibも使わず画面表示をやってみようかと。  まずは、テンプレートを参照してプロジェクトを作ります。  iOS6.1用にビルドするので、Language は、Objective-C を選択。 Game Technology も OpenGL ES にしておきます。   はい。 プロジェクトができました。 いろんなファイルもいっぱい付いてます。   とりあえず、Info 画面の iOS Deployment Target を 6.1 に変更します。 iOS7とかiOS8でビルドする場合は、変更する必要ないです。 Build Setting の Base SDK を iOS6.1 に変更します。 ここも同じですね。iOS7とかiOS8でビルドする場合は、変更する必要ないです。 Base SDKで、iOS6.1 を選択した場合は、Architecture を $(ARCHS_STANDARD_32_BIT) にしておく必要があります。 Main.storyboard と LaunchScreen.xib を削除します。 その後、ターゲットのところで、Main Interface と Launch Screen File を削除します。 (ブランクにします) iOS7とかiOS8だとエラーにならないと思いますが、iOS6だとビルドエラーになるので、テスト用のファイルは削除します。 プロジェクトに追加されている samp1Tests もフォルダごと削除しちゃいます。 ターゲットのところで、Linked Frameworks and Libralies で、フレームワークを追加します。 UIKit.framework GLKit.framework OpenGLES.framework storyboard や xib を消しちゃったので、そのままだと画面に何も表示されません。 そこで AppDelegate.m にコーディングを追加します。 windowオブジェクトに表示したい view を追加してます。

[Xcode6] iOS6向けのビルド

Xcode6からiOS6用のSDKが無くなってるようで。。。(今更ですが・・・ SDKを選択できるようにする方法は、こちらを参考に同じような手順で対応できます。 Xcode5でiOS6.1のBaseSDKを使えるようにする BaseSDK で iOS 6.1 が選択できるようになったので、これで一安心と思いきや・・・ ビルドエラーが出まくるじゃありませんか。 architecture not supported なんの事だか。 分かってしまえば、なるほど って感じなんですけどね。 Xcode6 のテンプレートプロジェクトって、デフォルトがiOS8用になってるようで、BaseSDKもiOS8になってるし、iOS Deployment Target も8.1になってます。 これをiOS6.1用に変更する事は用意に想像はついたのですが、 Build Setting の Architectureの変更までは気づきませんでした。  Standard Architecture (arm7, arm64) - $(ARCHS_STANDARD) 標準アーキテクチャ。 問題ないように思いましたが64bitでのビルドらしいです。 iOS6.1 は、32bitなので変更してあげないとダメのようです。 $(ARCHS_STANDARD) → $(ARCHS_STANDARD_32_BIT) これでビルドをすると、気持ちよくコンパイルが通ります。