2

以下を使用してNSIndexPathを作成しました。

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];

このパスを変更してUITableViewを介してインデックスを作成したいのですが、NSIndexPathに値を設定するAPI呼び出しが見つかりません

毎回新しいNSIndexPathを割り当てるのは非常に無駄なようです。特に、メモリ(プロトコルへの追加)を割り当てない呼び出しを行うために実際に使用しているためです。

4

2 に答える 2

2

NSIndexPathに値を設定するAPI呼び出しが見つかりません。

ないので-NSIndexPathは不変です。

毎回新しいNSIndexPathを割り当てるのは大変な無駄のようです

です。そのために残念。@autoreleasepool { }あなたがこれを気にするならば、それをに包んでください。

于 2012-11-14T20:55:47.327 に答える
2

NSIndexPath不変です。毎回新しいものを作成するだけです。次に、パフォーマンスに問題がある場合は、Instrumentsを使用して、インデックスパスの作成が問題の一部であるかどうかを判断します。

インデックスパスの作成が問題であることを確認した後でのみNSIndexPath、インデックス用の独自のストレージを持ち、ミューテーションメソッドを提供するサブクラスの作成を検討する必要があります。(UIKitは内部でこのようなことを行いますUIMutableIndexPathが、そのクラスは公開されていません。)

于 2012-11-14T20:57:12.100 に答える