與NSDictionary
有點問題並進行排序。我已閱讀了幾篇有關使用某些方法的文章,如sortedArrayUsingSelector
和keysSortedByValueUsingComparator
,但無法完全理解。目前我有一個表格視圖控制器正確顯示一些數據。我唯一的問題是它顯示它的順序(或更確切地說,這些部分的順序)。用鍵存儲數組的最佳方法,並按條目順序對它們進行排序
在聲明文件:
@interface SettingsTableViewController : UITableViewController {
NSDictionary *tableContents;
NSArray *keys;
}
@property (nonatomic,retain) NSDictionary *data;
@property (nonatomic,retain) NSArray *keys;
@end
而實現文件中,用於viewDidLoad
:
NSArray *arrayTemporary1 = [[NSArray alloc]initWithObjects:@"Settings 1",@"Setting 2",@"Setting 3",@"Setting 4",nil];
NSArray *arrayTemporary2 = [[NSArray alloc]initWithObjects:@"Enable Gestures",nil];
NSArray *arrayTemporary3 = [[NSArray alloc]initWithObjects:@"Instructions",@"Frequently Asked Questions",@"About",nil];
NSDictionary *temporary =[[NSDictionary alloc]initWithObjectsAndKeys:arrayTemporary1,@"Settings",arrayTemporary2,@"Application",arrayTemporary3,@"Information",nil];
self.tableContents = temporary;
self.keys = [self.tableContents allKeys];
[temporary release];
[arrayTemporary1 release];
[arrayTemporary2 release];
[arrayTemporary3 release];
個體單元中的數據被從cellForRowAtIndexPath
方法裏的數組NSArray *listData =[self.tableContents objectForKey:[self.keys objectAtIndex:[indexPath section]]];
訪問。
雖然這工作正常,我遇到的問題是,而不是顯示在temporary
編寫的順序部分,它是這樣隨機。希望能得到一些指導。
我現在就試試看,謝謝哥們。 – sooper
太棒了,工作。我會盡快接受,並等待「4分鐘」! – sooper