// // YOUPAINIMInputView.h // NIMKit // // Created by chris. // Copyright (c) 2015年 NetEase. All rights reserved. // #import #import "NIMInputProtocol.h" #import "NIMSessionConfig.h" #import "YOUPAINIMInputToolBar.h" #import "YOUPAINIMInputAtCache.h" #import "YOUPAINIMInputVoiceView.h" @class YOUPAINIMInputMoreContainerView; @class YOUPAINIMInputEmoticonContainerView; typedef NS_ENUM(NSInteger, NIMAudioRecordPhase) { AudioRecordPhaseStart, AudioRecordPhaseRecording, AudioRecordPhaseCancelling, AudioRecordPhaseEnd }; @protocol NIMInputDelegate @optional - (void)youpaifdidChangeInputHeight:(CGFloat)inputHeight; @end @interface YOUPAINIMInputView : UIView @property (nonatomic, strong) NIMSession *session; @property (nonatomic, assign) NSInteger maxTextLength; @property (assign, nonatomic, getter=isRecording) BOOL recording; @property (strong, nonatomic) YOUPAINIMInputToolBar *toolBar; @property (strong, nonatomic) UIView *moreContainer; @property (strong, nonatomic) UIView *emoticonContainer; @property (strong, nonatomic) YOUPAINIMInputVoiceView *voiceViewContainer; @property (nonatomic, assign) NIMInputStatus status; @property (nonatomic, strong) YOUPAINIMInputAtCache *atCache; - (instancetype)initWithFrame:(CGRect)frame config:(id)config; - (void)reset; - (void)refreshStatus:(NIMInputStatus)status; - (void)setInputDelegate:(id)delegate; //外部设置 - (void)setInputActionDelegate:(id)actionDelegate; - (void)setInputTextPlaceHolder:(NSString*)placeHolder; - (void)updateAudioRecordTime:(NSTimeInterval)time; - (void)youpaifupdateVoicePower:(float)power; @end