2015-04-22 46 views
0

我有設置選項,其中有一個tableview(1)將顯示「類別」,並通過選擇類別將顯示「子類別」在下表視圖。UITableview列表項目問題

我有兩個單獨的數組類別和子類別。在「類別」中,我有@「商業」和@「個人」(預加載),並在索引0的「子類別」中列出了與商業相關的10個項目以及與個人相關的10個項目的索引1集合。

通過點擊業務或個人它顯示保存的子類別列表沒有問題。 從這裏用戶可以從表格視圖添加他們自己的類別和子類別。

舉例來說,如果我進入了一個名爲@「所有」新類別增加,@「所有」被放置在指數2

「類別」表視圖顯示@「商務」 @「個人」 @「所有「通過選擇」業務「或」個人「,它會顯示所需的子類別項目,分別來自商業的索引0(預先加載10個項目),個人的索引1(預先加載的10個項目)和所有的索引3(空列表)擁有)。

當我使用「NSSortDescriptor」的範疇陣列

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:nil ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)]; 
    [arrCategory sortUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]]; 

現在「類別」表視圖列表,@「全部」 @「商務」 @「個人」,所以「子類別」列表變得不匹配。對於@「商業」我有10個項目的子類別後排序列表的10個項目的商業來@ @「所有」類別。使用「NSSortDescriptor」後,類別項目的索引路徑發生變化,因此子類別變得不匹配。

如何在使用「NSSortDescriptor」進行類別更改「子類別」(項目)索引匹配「類別」?

回答

1

你應該創建模型和使用公共數據源

@interface CategoryModel : NSObject 

@property (nonatomic,retain) NSString *name; 
@property (nonatomic,retain) NSMutableArray *subCategories; //should contain subCategory class objects 
/* all other properties */ 

@end 

@interface subCategory : NSObject 

@property (nonatomic,retain) NSString *name; 
/* all other properties */ 
@end