// // HMEmoticonManager.h // 表情键盘 // // Created by 刘凡 on 16/3/3. // Copyright © 2016年 itcast. All rights reserved. // #import #import "HMEmoticonPackage.h" /// 表情工具类 - 提供表情视图的所有数据及处理逻辑 @interface HMEmoticonManager : NSObject /// 表情管理器单例 + (nonnull instancetype)sharedManager; /// 将指定字符串内容转换成带表情图片的属性文本 /// /// @param string 字符串 /// @param font 属性字符串使用的字体 /// @param textColor 属性字符串使用的字体颜色 /// /// @return 带表情图片的属性文本 - (NSAttributedString * _Nonnull)emoticonStringWithString:(NSString * _Nonnull)string font:(UIFont * _Nonnull)font textColor:(UIColor * _Nonnull)textColor; /// 取到表情字符串对应的表情模型 /// /// @param string 字符串 /// /// @return 表情模型 - (HMEmoticon * _Nullable)emoticonWithString:(NSString * _Nonnull)string; /// 表情包数组 @property (nonatomic, nonnull) NSMutableArray *packages; /// 用户标识符,默认是 cn.itcast.DefaultUser @property (nonatomic, copy, nonnull) NSString *userIdentifier; #pragma mark - 数据源方法 /// 返回 section 对应的表情包中包含表情页数 /// /// @param section 表情分组下标 /// /// @return 对应页数 - (NSInteger)numberOfPagesInSection:(NSInteger)section; /// 根据 indexPath 返回对应分页的表情模型数组,每页 20 个 /// /// @param indexPath indexPath /// /// @return 表情模型数组 - (nonnull NSArray *)emoticonsWithIndexPath:(NSIndexPath * _Nonnull)indexPath; #pragma mark - 最近使用表情 /// 添加最近使用表情 /// /// @param emoticon 表情模型 - (void)addRecentEmoticon:(HMEmoticon * _Nonnull)emoticon; @end