Objective-Cでオブジェクトが存在するのかのチェックを書くときどうするか

iPhoneアプリ開発中なう(☝ ՞ਊ ՞)☝

Xcodeで書いているとオブジェクトがないポインタを見ようとすると落ちてしまう。
オブジェクトが入ってるはずの変数名をチェックするとnilが返るみたい。

例えば以下みたいに書いておくと

    if([self.userDefault objectForKey:@"hoge"] != nil)
    {
        return [self.userDefault integerForKey:@"hoge"];
    }

self.userDefualtがないときはnilが返るっぽいので出力するならnilかどうかを判定しておけば落ちるのをさけられる気がする。

みんなどうやってるんだろうか

Xcodeエラー failed with exit code 255

エラーがでてビルドできなくなって困りました

Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 255

再起動すると解決

検索するときはfailed with exit code 255のようにエラーで検索すること

Expected expressionというエラーがでる

objective-cを書いていてswitch文の中で変数宣言をしたらエラーがでました。

switch文内でエラーがでるコード

switch文内を見ると

switch(i){
   case 0:
     int hoge = 0;
     break;
   default:
     break;
}

みたいに書くとExpected expressionというエラーがでました。
変数宣言をしている、int hoge;をswitch文の外に書くとExpected expressionが解決します。

NSLogよりも便利なXcodeでObjective-Cをデバックするときのやり方

breakpointを貼る

breakpointで止まるのでコンソールにp 変数と打つと変数に含まれているものを見ることができる。
変数iなら

p i

とか打つと中身を見ることができる

オブジェクトの中身も見られる

po aView

リテインカウントを見たい場合

po (int)[hogeArray retainCount];

簡単に見られる

viewに乗っかっているものを見たい場合

po [self.view subviews]

こんな感じで例えばUIImageViewなど乗っけているもの全て見られる。重複し手いる場合などがわかりやすい。

aViewの上にaddSubviewしている最初のオブジェクトを見たい場合の指定

po aView.layer.sublayers[0]

NSLogよりもこっちのほうが便利。

NSLogと組み合わせるともっと便利。

iOSシミュレータで画像キャプチャをとる

メモっておきます。なんども忘れるので

iOSシミュレータの画面をキャプチャする3ステップ

1. Command + Control + C でキャプチャ
2. プレビューをたちあげて Command + N でコピーした画像から新規作成
3. プレビューから画像を書きだして保存

こんな感じで画像をとれます

アプリ感想 SushiGoRound!

有料で糞ゲー。まさにダブルパンチ。でも慣れればそこそこ楽しめると思う。

タイマーがあるゲームのくせにプレイ中に広告がいきなり入る。慣れるまでが大変。
とにかくルールがわかりづらい。こういうユーザーに勉強を強いるゲームは糞ゲーだとおもう。
DL購入不要。

SushiGoRound! - Miniclip.com

iPhoneアプリデベロッパーのリスト

ここでいうiPhoneアプリディベロッパーとはゲームアプリのデベロッパーのことです。かんたんゲームとかいわゆる糞ゲーみたいなそういうボクが好きそうなところを好みで。アプリのページになるべくリンクしておきます。

カプスールプラス


http://capsuleplus.net/works.html

eagle


http://www.eagle-inc.jp/

CLOBAGAMES


http://clobagames.com/

cocolo-bit


http://cocolo-bit.com/

Goodia Inc.


http://goodia.co.jp/application.html

スキップモア


http://skipmore.com/app/

tottyapps


http://tottyapps.com/?page_id=11

O!TOUCH


http://otouch.net/