接口类名 | 描述 |
TAVEditor | SDK 操作入口类。 |
SDK 手势操作封装基类。 |
接口名 | 描述 |
代理是否响应贴纸和画中画的点击。 | |
代理贴纸编辑视图的操作响应。 | |
创建自定义挂件编辑视图的工厂。 |
名称 | 描述 |
contentView:shouldTouchSticker: | 询问代理,贴纸是否允许响应触摸。 |
contentView:ShouldTouchPipItem: | 询问代理,画中画是否允许响应触摸。 |
名称 | 描述 |
stickerViewDidReachToEnd: | 通知代理,贴纸是否已经播放结束。 |
stickerView:shouldHideAtTime: | 询问代理,贴纸在当前时间是否隐藏。 |
stickerViewStartPanning: | 通知代理,贴纸 start panning。 |
stickerViewChangePanning: | 通知代理,贴纸正在 change panning。 |
stickerViewEndPanning: | 通知代理,贴纸 end panning。 |
stickerViewOnDelete: | 通知代理,贴纸被删除。 |
stickerViewOnClicked: | 通知代理,贴纸被点击。 |
名称 | 描述 |
pipView:shouldHideAtTime: | 询问代理,画中画在当前时间是否隐藏。 |
pipViewStartPanning: | 通知代理,画中画 start panning。 |
pipViewChangePanning: | 通知代理,画中画正在 change panning。 |
pipViewEndPanning: | 通知代理,画中画 end panning。 |
pipViewOnDelete: | 通知代理,画中画被删除。 |
pipViewOnClicked: | 通知代理,画中画被点击。 |
名称 | 描述 |
activeView | 正在被激活的视图。 |
isNoFocusGestureEnabled | 设置是否可以直接拖动挂件,无需先选中挂件。 |
registerDelegate: | 注册代理。 |
unregisterDelegate: | 取消代理。 |
filterStickerWithPoint: | 返回点击处的所有合法贴纸(sticker)。 |
filterPipItemWithPoint: | 返回点击处的所有合法画中画(PipItem)。 |
// 继承扩展TAVWidgetContentView@interface MYWidgetContentView : TAVWidgetContentView@property (nonatomic, weak) TAVEditor *editor;@end@implementation TAVMagicWidgetContentView- (instancetype)initWithFrame:(CGRect)frame{self = [super initWithFrame:frame];if (self) {[self setupUI];}return self;}- (void)setupUI {// 自定义UI}@end
// 继承扩展TAVStickerView@interface MyStickerView : TAVStickerView// 添加一个编辑按钮@property (nonatomic, strong, readonly) UIButton *editButton;@end@implementation TAVMagicStickerView- (instancetype)initWithFrame:(CGRect)frame{self = [super initWithFrame:frame];if (self) {[self setupUI];}return self;}- (void)setupUI{_editButton = [UIButton buttonWithType:UIButtonTypeCustom];_editButton.imageView.contentMode = UIViewContentModeScaleAspectFit;[_editButton setImage:[UIImage imageWithName:@"icon_pip_edit"] forState:UIControlStateNormal];[_editButton addTarget:self action:@selector(didClickEditItem) forControlEvents:UIControlEventTouchUpInside];[self addSubview:_editButton];}// 重写接口 自定义实现拖动view时隐藏按钮- (void)handlePanRecognizer:(UIPanGestureRecognizer *)recognizer {[super handlePanRecognizer:recognizer];[self handleRecognizer:recognizer];}- (void)handleRecognizer:(UIGestureRecognizer *)recognizer {switch (recognizer.state) {case UIGestureRecognizerStateBegan:self.editButtom.hidden = YES;break;case UIGestureRecognizerStateChanged:self.editButtom.hidden = YES;break;case UIGestureRecognizerStateCancelled:case UIGestureRecognizerStateEnded:case UIGestureRecognizerStateFailed:{self.editButtom.hidden = NO;break;}default:break;}}@end
文档反馈