2013-10-29 9 views
8

ソートされたオブジェクトのNSMutableArrayがあり、これはUITableViewに表示されます。iOS:ソートされたNSMutableArrayで挿入位置を見つける方法

新しいオブジェクトを配列に挿入し、新しく挿入されたオブジェクトのインデックスを必要とするテーブルビューを更新したいとします。

テーブルビューを更新するために必要なアレイへの正しい挿入インデックスを教えてくれるシステムメッセージが見つかりません。

私が見つけることができる最高は次のとおりです。

  • は、(検索が必要です)新しいオブジェクトの場所を見つけ、配列の古いコピーを使用して
  • ソート
を新しいオブジェクトを追加

または

  • ertion position

ソートされた配列に挿入位置を見つけるメッセージがあるはずですか?それとも私はここで何かを見逃していますか?

答えて

24

アレイ全体でindexOfObject:inSortedRange:options:usingComparator:メソッドを使用できます。このメソッドは、渡した範囲でバイナリ検索を実行し、NSBinarySearchingInsertionIndexオプションを使用したときに挿入ポイントを与えます。

+3

クール私はその方法について知らなかった。共有してくれてありがとう。 (投票された)開発中の比較的古いタイマーとして、私はCocoaフレームワークの深みと幅に驚いています。 –

関連する問題