@@ -53,6 +53,11 @@ @interface XHMessageTableViewController ()
5353 */
5454@property (nonatomic , strong ) XHVoiceRecordHelper *voiceRecordHelper;
5555
56+ /* *
57+ * 判断是不是超出了录音最大时长
58+ */
59+ @property (nonatomic ) BOOL isMaxTimeStop;
60+
5661#pragma mark - DataSource Change
5762/* *
5863 * 改变数据源需要的子线程
@@ -369,10 +374,19 @@ - (XHLocationHelper *)locationHelper {
369374
370375- (XHVoiceRecordHelper *)voiceRecordHelper {
371376 if (!_voiceRecordHelper) {
377+ _isMaxTimeStop = NO ;
378+
372379 WEAKSELF
373380 _voiceRecordHelper = [[XHVoiceRecordHelper alloc ] init ];
374381 _voiceRecordHelper.maxTimeStopRecorderCompletion = ^{
375382 DLog (@" 已经达到最大限制时间了,进入下一步的提示" );
383+
384+ // Unselect and unhilight the hold down button, and set isMaxTimeStop to YES.
385+ UIButton *holdDown = weakSelf.messageInputView .holdDownButton ;
386+ holdDown.selected = NO ;
387+ holdDown.highlighted = NO ;
388+ weakSelf.isMaxTimeStop = YES ;
389+
376390 [weakSelf finishRecorded ];
377391 };
378392 _voiceRecordHelper.peakPowerForChannel = ^(float peakPowerForChannel) {
@@ -1018,7 +1032,11 @@ - (void)didCancelRecordingVoiceAction {
10181032
10191033- (void )didFinishRecoingVoiceAction {
10201034 DLog (@" didFinishRecoingVoice" );
1021- [self finishRecorded ];
1035+ if (self.isMaxTimeStop == NO ) {
1036+ [self finishRecorded ];
1037+ } else {
1038+ self.isMaxTimeStop = NO ;
1039+ }
10221040}
10231041
10241042- (void )didDragOutsideAction {
0 commit comments