【问题标题】:iPhone Table View List File Names?iPhone 表格视图列表文件名?
【发布时间】:2012-04-09 17:24:02
【问题描述】:

我的应用中有一个名为“文件”的文件夹。我想在表格视图中显示所有这些 TXT 文件,然后能够单击每个文件以在不同的控制器中打开它。我有它所有的功能,但问题在于表视图上列出的名称。它给出了 TXT 文件的整个工作路径,而我只需要文件名。我知道 NSString 可以使用 lastComponentPath 代码行来返回它,但单元格文本不能来自 NSString。那么,如何让它返回文件名,并在表格视图中正确列出呢?这是我当前的代码:

NSBundle *bundle = [NSBundle mainBundle];
self.files  = [bundle pathsForResourcesOfType:@"txt" inDirectory:@"Files"];
NSString *documentsDirectoryPath = [self.files objectAtIndex:thepath.row];
self.title = @"My Files";
self.filenames = [[documentsDirectoryPath lastPathComponent] stringByDeletingPathExtension];

对于单元格内容是:

cell.textLabel.text = [self.files objectAtIndex:indexPath.row];

所以,我尝试输入 self.filenames 但 NSString 不会响应 indexPath.row。那么,如何从 self.files 数组中加载文件,但从 self.filenames 字符串中显示名称?

【问题讨论】:

    标签: iphone xcode nsstring nsarray tableview


    【解决方案1】:

    您应该在 cellForRowAtIndexpath: 方法中转换文件名。

    NSString *filename = [[[self.files objectAtIndex:indexPath.row] lastPathComponent] stringByDeletingPathExtension];
    cell.textLabel.text = filename;
    

    这样,每次渲染单元格时,它都会访问数组中的正确对象并根据您的需要操作值。

    【讨论】:

    • 结果很完美......不敢相信我之前没有想到这个,我想我已经筋疲力尽了。
    猜你喜欢
    • 2012-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多