0

当文本包含 HTML 标记时,如何使用 NSFetchedResultsController 按字母顺序对列表进行排序。

例如,我必须对此进行排序:

- <b>Hello</b>
- Adam

结果应该是:

- Adam
- <b>Hello</b>

这就是我目前的排序方式:

sortString = [[NSString alloc] initWithString:@"title"];

NSSortDescriptor *sortDescriptor2 = [[[NSSortDescriptor alloc] initWithKey:sortString ascending:sortAsc selector:@selector(localizedCaseInsensitiveCompare:)] autorelease];
NSArray *sortDescriptors = [[[NSArray alloc] initWithObjects:sortDescriptor, sortDescriptor2, nil] autorelease];
[fetchRequest setSortDescriptors:sortDescriptors];  

那么,有没有办法对“拆分”进行排序?

4

1 回答 1

0

是的,有一种方法:用你自己的选择器构造一个专门的 NSSortDescriptor。由于 NSString 有标准的方法来做你想做的事,你需要在 NSString 上创建一个名为“compareWithHTML:”的类别,它会剥离 HTML 并使用“compare:”或“localizedCompare:”进行比较。

于 2012-08-06T11:50:29.460 回答