ImojiSDKUI 2.2.3

ImojiSDKUI 2.2.3

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布时间上次发布2016 年 9 月

Nima Macbook 维护。



  • Alex Hoang,Nima Khoshini 和 Jeff Wang

Imoji SDK UI

一系列强大的开源 UI 小部件,利用了 Imoji SDK

有关完整文档详情,请访问 developer.imoji.io 以获取更多信息。

查看示例

我们的示例应用程序演示了将 Imoji 集成到您应用程序中的完整功能。

获取源代码

git clone https://github.com/imojiengineering/imoji-ios-sdk-ui.git

构建 ImojiKit 项目

cd imoji-ios/sdk-ui/Examples/ImojiKit
pod install
open imoji-kit.xcworkspace

启动应用程序以发现我们的开源 UI Kit ImojiSDKUI 提供的各种组件。

有关 Swift 2.0 的集成示例,请查看 Artmoji 示例。

cd imoji-ios-sdk-ui/Examples/Artmoji
pod install
open artmoji.xcworkspace

集成

将 ImojiSDKUI 添加到 Podfile 中

pod 'ImojiSDKUI'

构建您的项目

pod install

初始化 ImojiSDK 凭据。您可以将以下内容添加到

application:didFinishLaunchingWithOptions: method of AppDelegate
[[ImojiSDK sharedInstance] setClientId:[[NSUUID alloc] initWithUUIDString:@"your-client-id"]
                              apiToken:@"your-client-secret"];

显示 Imoji 集合视图控制器

IMImojiSession *session = [IMImojiSession imojiSession];
IMCollectionViewController *viewController = [IMCollectionViewController collectionViewControllerWithSession:session];
    [self presentViewController:viewController animated:YES completion:^{
        [viewController.collectionView loadImojiCategoriesWithOptions:
                [IMCategoryFetchOptions optionsWithClassification:IMImojiSessionCategoryClassificationTrending]
        ];
    }];

自定义

根据您的应用程序,您可能决定通过 IMCollectionViewController 显示贴纸,或者将组件集成到视图层次结构中。对于寻求后者的应用程序,我们提供了三种不同尺寸的贴纸选择器组件

显示全屏贴纸选择器的最简单方法是创建一个新的 IMCollectionViewController 实例

IMImojiSession *session = [IMImojiSession imojiSession];
IMCollectionViewController *viewController = [IMCollectionViewController collectionViewControllerWithSession:session];
viewController.collectionViewControllerDelegate = self;

[self presentViewController:viewController animated:YES completion:^{
  [viewController.collectionView loadImojiCategoriesWithOptions:
      [IMCategoryFetchOptions optionsWithClassification:IMImojiSessionCategoryClassificationTrending]
  ];
}];

重写 IMCollectionViewControllerDelegate 的 userDidSelectImoji:fromCollectionView: 以与选定的贴纸进行交互

- (void)userDidSelectImoji:(IMImojiObject *)imoji fromCollectionView:(IMCollectionView *)collectionView {
  // add your logic here
}

有边框的贴纸还是无边框?小或大图像尺寸?

调整网格显示选项很简单。使用 renderingOptions 属性进行配置。您可以根据目标设备的屏幕大小设置图像的默认大小(缩略图、320、512 或全尺寸)。

collectionView.renderingOptions = [IMImojiObjectRenderingOptions optionsWithRenderSize:IMImojiObjectRenderSizeThumbnail
                                             borderStyle:IMImojiObjectBorderStyleSticker
                                             imageFormat:IMImojiObjectImageFormatPNG];

贴纸创建器

Imoji 贴纸创建器允许开发人员轻松集成我们的强大工具,使用户能够创建和分享自己的贴纸。所有上传、标记和显示都为您完成,只需集成创建器,然后让您的用户发挥创造力即可。

默认情况下,Sticker Creator 不会打包到主 Podspec 中。您需要通过更新 Podfile 来添加它

pod 'ImojiSDKUI/Editor'

然后,这样启动 Sticker Creator 视图控制器:

IMImojiSession* session = [IMImojiSession imojiSession];
IMCreateImojiViewController* createViewController =
      [IMCreateImojiViewController controllerWithSourceImage:image session:session];
[parentViewController presentViewController:createViewController animated:YES completion:nil];

设置 IMCreateImojiViewControllerDelegate 属性以确保您的类在贴纸创建完成时收到通知

createViewController.createDelegate = self;

重写 imojiUploadDidComplete

- (void)imojiUploadDidComplete:(IMImojiObject *)localImoji
               persistentImoji:(IMImojiObject *)persistentImoji
                     withError:(NSError *)error
            fromViewController:(IMCreateImojiViewController *)viewController {
    [self dismissViewControllerAnimated:YES completion:nil];

    // display the newly created Imoji
}