2010-08-10 40 views
0

我正在为我的应用购买商店正面工作。我将这些物品加载到内-(void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response,但是我的所有产品都以数字开头。我想按升序对它们进行排序,但每当我使用sortUsingSelector:@selector(compare:)时,我都会遇到无法识别的选择器错误。排序应用购买

什么是排序传入产品的正确方法?任何帮助将不胜感激。

谢谢

回答

1

我认为你可以创建一个compareTitle:方法的本地类别,并在你的排序中使用它。

@interface SKProduct (Local) 
- (NSComparisonResult)compareTitle:(SKProduct*)productB 
@end 

@implementation SKProduct (Local) 
- (NSComparisonResult)compareTitle:(SKProduct*)productB 
{ 
    // Compare the product titles 
    return [self.localizedTitle compare:productB.localizedTitle]; 
} 
@end 
0

伟大的解决方案epatel!由于海报的产品有数字(就像我的产品一样),我改变了执行方式来做NSNumericSearch,如下所示:

- (NSComparisonResult)compareTitle:(SKProduct *)productB { 
    // Compare the product titles 
    return [self.localizedTitle compare:productB.localizedTitle options:NSNumericSearch]; 
}