Есть ли более удобный способ создания объекта NSIndexPath? - PullRequest
1 голос
/ 17 февраля 2012
    NSIndexPath *index_path;
    NSUInteger   u_array[] = {0, 0, 0};                
    index_path = [NSIndexPath indexPathWithIndexes : u_array length : 3]; 

Приведенное выше создает NSIndexPath с длиной == 3. Можно ли сделать то же самое с меньшим количеством операторов?

Ответы [ 3 ]

3 голосов
/ 17 февраля 2012

Если вы говорите об использовании его в UITableView, есть дополнение UIKit indexPathForRow:inSection:

+ (NSIndexPath *)indexPathForRow:(NSInteger)row inSection:(NSInteger)section

Вот как это использовать:

NSIndexPath *myIndexPath = [NSIndexPath indexPathForRow:3 inSection:4];
2 голосов
/ 17 февраля 2012

Это, вероятно, лучшее, что вы можете сделать:

NSUInteger u_array[] = {0, 0, 0}; 
NSIndexPath *index_path = [NSIndexPath indexPathWithIndexes:u_array length:3];
1 голос
/ 17 февраля 2012

Только если вы используете iOS (вы пометили это и , поэтому не уверены, какой именно), и вас интересует только путь индекса из двух частей (т.е.раздел таблицы и строки) - в этом случае вы можете использовать [NSIndexPath indexPathForRow:inSection:].Это описано в разделе дополнений NSIndexPath UIKit документации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...