静岡県富士市在住のiPhoneアプリ開発者ブログ -46ページ目

NSArray/NSMutableArray をソートする

NSArray に格納した任意のオブジェクトの配列を何らかのキーでソートするには

- (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)context

を使う

第1引数は、比較を行うためのC言語の関数を定義する
第2引数は、第1引数で指定した関数の引数を定義できる

例えば、下の関数では、Info というクラスの percent という実数をキーとして降順にソートする

NSInteger compareInfo(id aInfo1, id aInfo2, void *context)
{
float dpercent1 = ((Info*) aInfo1).percent;
float dpercent2 = ((Info*) aInfo2).percent;

if (dpercent1 < dpercent2)
return NSOrderedDescending;
else if (dpercent1 > dpercent2)
return NSOrderedAscending;
else
return NSOrderedSame;
}



で、

NSArray *array = [infos sortedArrayUsingFunction: compareInfo context:NULL];
//infos は、Infoクラスのインスタンスの配列

こうすると、array には、infos を percent で降順ソートした配列が格納される

サクラサク

所用がありまして実家に帰郷

地元をぐるぐると3万歩く中、桜を発見

静岡県富士市在住のiPhoneアプリ開発者ブログ β

満開になるのが待ち遠しいなぁ

また、一週間の活動が実を結び、この桜のように咲いてくれることを楽しみに待っていよう

iPhone SDK 3.0 beta をインストールしてみた

今年の夏に、iPhone OS 3.0 がでるということで、昨日(アメリカ3月17日)から
開発者向けに開発環境(SDK)のベータ版が配布されている。

静岡県富士市在住のiPhoneアプリ開発者ブログ β

iPhone OS 3.0 ではアプリ内での課金、コピペ、プッシュ通知など待ち望んでいた機能が目白押し。

ということで、早速、iPhone SDK 3.0 beta をインストールしてみたんですが・・・

これまで開発していたプロジェクトを実機に転送しようとビルドしたら、ビルドエラー!
なぜ!?

エラーをみるとコード署名がおかしいみたい。
で、プロジェクトの設定からコード署名をみると値の欄が「?」になってしまている。

なぜ!?

この後、Xcode を再起動してみたり、証明書を再発行してみたりといろいろやってみたが解決せず。
オーガナイザも少し変更されているような(汗)

Webで情報を検索しても昨日の今日なので有力な情報が得られず。。。

で、結局 SDK 2.2.1 に戻しました。
そしたら、コード署名の欄も復活し、試行錯誤のなかでいろいろと変えてしまった設定を戻し、無事、実機に転送できるようになり一安心。

たぶん自分と同じようにハマる人が続出するのではないかな~
それとも、こうなるよ、ってどっかに書いてあるのかな~