上传任何类型的文件

时间:2016-05-23 12:31:51

标签: ios objective-c

我使用以下代码从iOS设备浏览文件

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
        UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
        imagePicker.sourceType =  UIImagePickerControllerSourceTypePhotoLibrary;
        imagePicker.delegate = self;
        imagePicker.allowsEditing = NO;
        [self presentModalViewController:imagePicker animated:YES];
    }
    else {
        UIAlertView *alert;
        alert = [[UIAlertView alloc] initWithTitle:@"Error"
                                           message:@"This device doesn't support photo libraries."
                                          delegate:self cancelButtonTitle:@"Ok"
                                 otherButtonTitles:nil];
        [alert show];
    }
}

上面的代码可以只选择图像文件,但我想要的就是我想要上传任何文件..它可以是图像文件或文档文件。 我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

你的问题含糊不清。

听起来您更多地询问用户如何选择非图像文件,而不是上传它们的方式。

您正在使用的课程UIImagePickerController用于从用户的照片库中选择图片(或可能是视频)。这就是让用户选择的全部内容。如果您想让用户选择其他类型的文件,那么这项工作就是错误的工具。

在评论中,您说您希望用户“从存储卡中浏览文档”#34;。 iOS中没有存储卡,应用程序只能访问文件系统。

如果您的应用具有文档界面并允许用户管理其他类型的文档,则这些文档很可能存储在用户的文档目录中。您可以使用NSFileManager在文档目录中构建文件数组,而不管其类型如何,并让用户选择其中一个文件。