MLEmojiLabel.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. //
  2. // MLEmojiLabel.h
  3. // MLEmojiLabel
  4. //
  5. // Created by molon on 5/19/14.
  6. // Copyright (c) 2014 molon. All rights reserved.
  7. //
  8. //#import <TTTAttributedLabel/TTTAttributedLabel.h>
  9. #import "TTTAttributedLabel.h"
  10. typedef NS_OPTIONS(NSUInteger, MLEmojiLabelLinkType) {
  11. MLEmojiLabelLinkTypeURL = 0,
  12. MLEmojiLabelLinkTypeEmail,
  13. MLEmojiLabelLinkTypePhoneNumber,
  14. MLEmojiLabelLinkTypeAt,
  15. MLEmojiLabelLinkTypePoundSign,
  16. };
  17. @class MLEmojiLabel;
  18. @protocol MLEmojiLabelDelegate <TTTAttributedLabelDelegate>
  19. @optional
  20. - (void)mlEmojiLabel:(MLEmojiLabel*)emojiLabel didSelectLink:(NSString*)link withType:(MLEmojiLabelLinkType)type;
  21. @end
  22. @interface MLEmojiLabel : TTTAttributedLabel
  23. @property (nonatomic, assign) BOOL disableEmoji; //禁用表情
  24. @property (nonatomic, assign) BOOL disableThreeCommon; //禁用电话,邮箱,连接三者
  25. @property (nonatomic, assign) BOOL isNeedAtAndPoundSign; //是否需要话题和@功能,默认为不需要
  26. @property (nonatomic, copy) NSString *customEmojiRegex; //自定义表情正则
  27. @property (nonatomic, copy) NSString *customEmojiPlistName; //xxxxx.plist 格式
  28. @property (nonatomic, copy) NSString *customEmojiBundleName; //自定义表情图片所存储的bundleName xxxx.bundle格式
  29. @property (nonatomic, copy) NSArray *checkResults;
  30. @property (nonatomic, strong) UIColor *checkColor;
  31. #pragma clang diagnostic push
  32. #pragma clang diagnostic ignored "-Wobjc-property-synthesis"
  33. @property (nonatomic, weak) id<MLEmojiLabelDelegate> delegate; //点击连接的代理方法
  34. #pragma clang diagnostic pop
  35. @property (nonatomic, copy, readonly) id emojiText; //外部能获取text的原始副本
  36. - (CGSize)preferredSizeWithMaxWidth:(CGFloat)maxWidth;
  37. @end