WEBアプリケーション研究室 開発ノート TOP

WEBアプリケーション研究室 開発ノート [iPhone開発]NSArrayで要素の順番を並び替える

スポンサーサイト

-------- --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

    このエントリーをはてなブックマークに追加

NSArrayで例えば3番目の要素を5番目に移動したいとき、ちょっと気をつけなかればならないことがあります。


NSUInteger fromRow = 3;
NSUInteger toRow = 5;

id object = [[list objectAtIndex:fromRow] retain];
[list removeObjectAtIndex:fromRow];
[list insertObject:object atIndex:toRow];
[object release];
いったん取り出して、新しい場所に挿入すればいいのですが、removeObjectAtIndexした時点でNSArrayは対象要素をreleaseしますのでretainカウントが0になる可能性があります。retainしておかなければなりません。
スポンサーサイト

    このエントリーをはてなブックマークに追加
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。