YOUPAIBBNIMInputView.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. //
  2. // YOUPAIBBNIMInputView.h
  3. // VQU
  4. //
  5. // Created by Elaine on 2021/10/26.
  6. // Copyright © 2021 MS. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "NIMInputProtocol.h"
  10. #import "NIMSessionConfig.h"
  11. #import "YOUPAIBBNIMInputToolBar.h"
  12. #import "YOUPAINIMInputAtCache.h"
  13. #import "YOUPAINIMInputVoiceView.h"
  14. @class YOUPAINIMInputMoreContainerView;
  15. @class YOUPAINIMInputEmoticonContainerView;
  16. typedef NS_ENUM(NSInteger, BBNIMAudioRecordPhase) {
  17. BBAudioRecordPhaseStart,
  18. BBAudioRecordPhaseRecording,
  19. BBAudioRecordPhaseCancelling,
  20. BBAudioRecordPhaseEnd
  21. };
  22. @protocol BBNIMInputDelegate <NSObject>
  23. @optional
  24. - (void)didChangeInputHeight:(CGFloat)inputHeight;
  25. @end
  26. @interface YOUPAIBBNIMInputView : UIView
  27. @property (nonatomic, strong) NIMSession *session;
  28. @property (nonatomic, assign) NSInteger youpaipmaxTextLength;
  29. @property (assign, nonatomic, getter=isRecording) BOOL youpaiprecording;
  30. @property (strong, nonatomic) YOUPAIBBNIMInputToolBar *youpaiptoolBar;
  31. @property (strong, nonatomic) UIView *youpaipmoreContainer;
  32. @property (strong, nonatomic) UIView *youpaipemoticonContainer;
  33. @property (strong, nonatomic) YOUPAINIMInputVoiceView *youpaipvoiceViewContainer;
  34. @property (nonatomic, assign) BBNIMInputStatus youpaipstatus;
  35. @property (nonatomic, strong) YOUPAINIMInputAtCache *youpaipatCache;
  36. - (instancetype)initWithFrame:(CGRect)frame
  37. config:(id<NIMSessionConfig>)config;
  38. - (void)youpaifreset;
  39. - (void)youpaifrefreshStatus:(BBNIMInputStatus)status;
  40. - (void)youpaifsetInputDelegate:(id<BBNIMInputDelegate>)delegate;
  41. //外部设置
  42. - (void)youpaifsetInputActionDelegate:(id<NIMInputActionDelegate>)actionDelegate;
  43. - (void)youpaifsetInputTextPlaceHolder:(NSString*)placeHolder;
  44. - (void)youpaifupdateAudioRecordTime:(NSTimeInterval)time;
  45. - (void)youpaifupdateVoicePower:(float)power;
  46. @end