WPMediaPicker 1.8.11

WPMediaPicker 1.8.11

测试已测试
语言语言 Obj-CObjective C
许可 GPL-2.0
发布最后发布2024年2月

Maintained by Olivier Halligon, Lorenzo Mattei, Jeremy Massel, Giovanni Lodi, Yael Rubinstein, Automattic Mobile.




  • By
  • WordPress 移动团队

WPMediaPicker

Version License Platform

WPMediaPicker 是一个 iOS 控制器,允许捕获和选择媒体资源。它允许

  • 一次选择多个媒体对象。
  • 在选择器内捕获新媒体。
  • 使用不同的媒体库数据源。
  • 在不同的相册之间切换。
  • 按媒体类型筛选。
  • 全屏预览媒体(图片和视频)。
  • 将媒体选择器显示为键盘输入视图。
  • 非常快速且优化内存。
  • 允许资产的水平和垂直滚动。
  • 允许自定义搜索/筛选资产。

Screenshot

安装

WPMediaPicker 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile 中

pod "WPMediaPicker"

使用方法

要使用选择器,请做以下操作

导入标题

#import <WPMediaPicker/WPMediaPicker.h>

以窗口模式创建并展示选择器

WPNavigationMediaPickerViewController * mediaPicker = [[WPNavigationMediaPickerViewController alloc] init];
mediaPicker.delegate = self;
[self presentViewController:mediaPicker animated:YES completion:nil];

实现didFinishPickingAssets代理

这个代理负责在操作完成后关闭选择器。要关闭选择器,调用负责显示WPNavigationMediaPickerController对象的展示控制器的dismissViewControllerAnimated:completion:方法。请参考演示应用程序。

- (void)mediaPickerController:(WPMediaPickerViewController *)picker didFinishPickingAssets:(NSArray<WPMediaAsset> *)assets
{
  [self dismissViewControllerAnimated:YES completion:nil];    
}

显示选择器的其他方法

上面的示例展示了在模态视图中显示选择器的推荐方法。根据您的应用程序需求,目前有三种可用的控制器来显示选择器。

如何配置选择器的外观

只需使用 UIKit 的标准外观方法。以下是如何配置主要组件的示例。

//Configure navigation bar background color
[[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[WPNavigationMediaPickerViewController class]]] setBarTintColor:[UIColor colorWithRed:0/255.0f green:135/255.0f blue:190/255.0f alpha:1.0f]];
//Configure navigation bar items text color
[[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[WPNavigationMediaPickerViewController class]]] setTintColor:[UIColor whiteColor]];
//Configure navigation bar title text color
[[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[WPNavigationMediaPickerViewController class]]] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor whiteColor]} ];
//Configure background color for media scroll view
[[UICollectionView appearanceWhenContainedInInstancesOfClasses:@[[WPMediaCollectionViewController class]]] setBackgroundColor:[UIColor colorWithRed:233/255.0f green:239/255.0f blue:243/255.0f alpha:1.0f]];
//Configure background color for media cell while loading image.
[[WPMediaCollectionViewCell appearanceWhenContainedInInstancesOfClasses:@[[WPMediaCollectionViewController class]]] setBackgroundColor:[UIColor colorWithRed:243/255.0f green:246/255.0f blue:248/255.0f alpha:1.0f]];
//Configure color for activity indicator while loading media collection
[[UIActivityIndicatorView appearanceWhenContainedInInstancesOfClasses:@[[WPMediaCollectionViewController class]]] setColor:[UIColor grayColor]];

如何为选择器使用自定义数据源

如果您有一个自定义的媒体数据库,并想使用 WPMediaPicker 显示,您需要围绕您的数据实现以下协议

您可以通过查看协议文档以获取更多实现细节。实现后,您可以通过以下方式简单使用它

self.customDataSource = [[WPCustomAssetDataSource alloc] init];
mediaPicker.dataSource = self.customDataSource;

示例项目

要运行示例项目,请克隆存储库,并首先从 Example 目录运行 pod install

需求

  • ARC
  • 照片库,AVFoundation,ImageIO
  • XCode 10或以上
  • iOS 11或以上

贡献力量

阅读我们的贡献力量指南,了解如何报告问题、贡献代码以及其他贡献方式。

联系我

如果您对设置有疑问或只是想打个招呼,加入WordPress Slack,并在#mobile频道留言。

作者

WordPress,[email protected]

许可证

WPMediaPicker采用GPL许可证。有关更多信息,请参阅"LICENSE"文件