OStack程序员社区-中国程序员成长平台

标题: ios - 检查文件是否存在于路径中并根据结果设置按钮 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 20:28
标题: ios - 检查文件是否存在于路径中并根据结果设置按钮

我想检查文件是否存在并根据结果设置按钮,但我每次都从函数 getAudiofileName 获得 nil 值。这是设计此功能的更好方法。我怎样才能以一种好的方式做到这一点。我在这部分苦苦挣扎。谁能指出我出了什么问题。

        NSString *audioFile = [self getAudiofileName:indexPath.row];
        NSLog(@"audiofile=%@",audioFile); // Getting nil everty time

    if (!audioFile) {
        [SoundsCell.customBtn setImage:[UIImage imageNamed"down.png"] forState:UIControlStateNormal];
        [playBtn setEnabled:NO];
    } else {
        [SoundsCell.customBtn setImage:[UIImage imageNamed"listen.png"] forState:UIControlStateNormal];
        [playBtn setEnabled:YES];
    }



    [SoundsCell.customBtn addTarget:self actionselector(getconnection forControlEvents:UIControlEventTouchUpInside];


    SoundsCell.selectionStyle = UITableViewCellSelectionStyleNone;

    [delegate.delArrAlbumDetailCell addObject:SoundsCell];
    return SoundsCell;

}



- (NSString *)getAudiofileNameint)IndexRow{


    NSLog(@"delegate.SoundsArr %d",[delegate.SoundsArr count]);
    selectedClip = [delegate.SoundsArr objectAtIndex:IndexRow];

    NSString *toendstring;
    NSString *temp = [NSString stringWithFormat"%@.mp3", selectedClip.clip_name];

    NSLog(@"temp =  %@", temp );
    NSLog(@"temp =  %@", selectedClip.clip_url );


    if (temp != nil) 
    {
        toendstring = temp;
        NSLog(@"toendString =%@", toendstring);

    }

    NSString *audioFilePath = [NSString stringWithFormat"%@/%@",self.dataPath,toendstring];
    NSLog(@"playing audioFilePath =%@", audioFilePath);
    NSFileManager *filmanager = [NSFileManager defaultManager];

    if([filmanager fileExistsAtPath:audioFilePath])
    {
        return toendstring;
    }
    else
    {
        return nil;
    }


}

提前致谢



Best Answer-推荐答案


一般评论:

现在答案。重复使用时单元格可以是任何状态,因此您需要设置下载和播放,例如:

   if (!audioFile) {
       [SoundsCell.customBtn setImage:[UIImage imageNamed"DOWNLOAD.png"] forState:UIControlStateNormal];
       [playBtn setEnabled:NO];
    } else {
       [SoundsCell.customBtn setImage:[UIImage imageNamed"LAY.png"] forState:UIControlStateNormal];
       [playBtn setEnabled:YES];
    }

您可能需要更改操作。

关于ios - 检查文件是否存在于路径中并根据结果设置按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8062273/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4