【发布时间】:2018-01-16 07:19:12
【问题描述】:
我有一个由数组填充的日期视图单元格,我需要添加两个按钮,一个用于 A 到 Z,另一个用于 Z 到 A。我能够对数组进行排序,但不确定如何在运行时更改它我的意思是在表格视图中按下按钮。这是我用来排序的代码:
[filePathsArray sortUsingSelector:@selector(compare:)];
表格视图只是常规的表格视图,使用 csv 文件中的数组归档。这就是我获取数组的方式 路径 = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSFileManager *manager = [NSFileManager defaultManager];
NSMutableArray* fileList = [manager contentsOfDirectoryAtPath:documentsDirectory error:nil];
//--- Listing file by name sort
NSLog(@"\n File list %@",fileList);
//---- Sorting files by extension
NSMutableArray *filePathsArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:documentsDirectory error:nil];
[filePathsArray sortUsingSelector:@selector(compare:)];
NSLog(@"\n sort by");
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF EndsWith '.csv'"];
filePathsArray = [filePathsArray filteredArrayUsingPredicate:predicate];
NSLog(@"\n\n Sorted files by extension %@",filePathsArray);
任何帮助或指导将不胜感激。 谢谢。
【问题讨论】:
-
假设您的数据源已正确完成,只需重新加载需要更新的单元格。 UITableView 有一个 .reloadData() 来重新加载整个表格,如果只有特定的单元格受到影响,您可以改为使用 .reloadRows(at:with:) 提供要重新加载的单元格的 indexPath 和枚举 UITableViewRowAnimation 的一个选项来选择重新加载这些行的视觉效果。
标签: ios objective-c