// // YOUPAIBBNIMInputView.h // VQU // // Created by Elaine on 2021/10/26. // Copyright © 2021 MS. All rights reserved. // #import #import "NIMInputProtocol.h" #import "NIMSessionConfig.h" #import "YOUPAIBBNIMInputToolBar.h" #import "YOUPAINIMInputAtCache.h" #import "YOUPAINIMInputVoiceView.h" @class YOUPAINIMInputMoreContainerView; @class YOUPAINIMInputEmoticonContainerView; typedef NS_ENUM(NSInteger, BBNIMAudioRecordPhase) { BBAudioRecordPhaseStart, BBAudioRecordPhaseRecording, BBAudioRecordPhaseCancelling, BBAudioRecordPhaseEnd }; @protocol BBNIMInputDelegate @optional - (void)didChangeInputHeight:(CGFloat)inputHeight; @end @interface YOUPAIBBNIMInputView : UIView @property (nonatomic, strong) NIMSession *session; @property (nonatomic, assign) NSInteger youpaipmaxTextLength; @property (assign, nonatomic, getter=isRecording) BOOL youpaiprecording; @property (strong, nonatomic) YOUPAIBBNIMInputToolBar *youpaiptoolBar; @property (strong, nonatomic) UIView *youpaipmoreContainer; @property (strong, nonatomic) UIView *youpaipemoticonContainer; @property (strong, nonatomic) YOUPAINIMInputVoiceView *youpaipvoiceViewContainer; @property (nonatomic, assign) BBNIMInputStatus youpaipstatus; @property (nonatomic, strong) YOUPAINIMInputAtCache *youpaipatCache; - (instancetype)initWithFrame:(CGRect)frame config:(id)config; - (void)youpaifreset; - (void)youpaifrefreshStatus:(BBNIMInputStatus)status; - (void)youpaifsetInputDelegate:(id)delegate; //外部设置 - (void)youpaifsetInputActionDelegate:(id)actionDelegate; - (void)youpaifsetInputTextPlaceHolder:(NSString*)placeHolder; - (void)youpaifupdateAudioRecordTime:(NSTimeInterval)time; - (void)youpaifupdateVoicePower:(float)power; @end