Skip to content

Commit 6f15ead

Browse files
author
mengyaoyao
committed
键盘切换逻辑
1 parent 313d083 commit 6f15ead

File tree

1 file changed

+47
-26
lines changed

1 file changed

+47
-26
lines changed

CocoaAsyncSocket_TCP/View/KeyBoard/ChatKeyboard.m

Lines changed: 47 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -349,14 +349,6 @@ - (void)systemKeyboardWillShow:(NSNotification *)note
349349
[self customKeyboardMove:SCREEN_HEIGHT - systemKbHeight - Height(self.messageBar.frame)];
350350
}
351351

352-
#pragma mark - 切换至语音录制
353-
- (void)audioButtonClick:(UIButton *)audioButton
354-
{
355-
[_msgTextView resignFirstResponder];
356-
self.msgTextView.hidden = YES;
357-
self.audioLpButton.hidden = NO;
358-
[self customKeyboardMove:SCREEN_HEIGHT - Height(self.messageBar.frame)];
359-
}
360352
#pragma mark - 语音按钮点击
361353
- (void)audioLpButtonTouchDown:(UIButton *)audioLpButton
362354
{
@@ -389,32 +381,61 @@ - (void)audioLpButtonTouchUpInside:(UIButton *)audioLpButton
389381
#pragma mark - 切换到表情键盘
390382
- (void)switchFaceKeyboard:(UIButton *)swtFaceButton
391383
{
384+
swtFaceButton.selected = !swtFaceButton.selected;
385+
//刷新表情和操作按钮
386+
self.audioButton.selected = NO;
387+
self.swtHandleButton.selected = NO;
392388

393389
if (swtFaceButton.selected) {
394-
390+
_msgTextView.hidden = NO;
391+
_audioLpButton.hidden = YES;
392+
[_msgTextView resignFirstResponder];
393+
//展示表情键盘
394+
[self.keyBoardContainer bringSubviewToFront:self.facesKeyboard];
395+
//自定义键盘位移
396+
[self customKeyboardMove:SCREEN_HEIGHT - Height(self.frame)];
395397
}else{
396-
398+
[_msgTextView becomeFirstResponder];
397399
}
398-
399-
400-
_msgTextView.hidden = NO;
401-
_audioLpButton.hidden = YES;
402-
[_msgTextView resignFirstResponder];
403-
//展示表情键盘
404-
[self.keyBoardContainer bringSubviewToFront:self.facesKeyboard];
405-
//自定义键盘位移
406-
[self customKeyboardMove:SCREEN_HEIGHT - Height(self.frame)];
407400
}
408401
#pragma mark - 切换到操作键盘
409402
- (void)switchHandleKeyboard:(UIButton *)swtHandleButton
410403
{
411-
_msgTextView.hidden = NO;
412-
_audioLpButton.hidden = YES;
413-
[_msgTextView resignFirstResponder];
414-
//展示操作键盘
415-
[self.keyBoardContainer bringSubviewToFront:self.handleKeyboard];
416-
//自定义键盘位移
417-
[self customKeyboardMove:SCREEN_HEIGHT - Height(self.frame)];
404+
swtHandleButton.selected = !swtHandleButton.selected;
405+
//刷新表情和操作按钮
406+
self.swtFaceButton.selected = NO;
407+
self.audioButton.selected = NO;
408+
409+
if (swtHandleButton.selected) {
410+
_msgTextView.hidden = NO;
411+
_audioLpButton.hidden = YES;
412+
[_msgTextView resignFirstResponder];
413+
//展示操作键盘
414+
[self.keyBoardContainer bringSubviewToFront:self.handleKeyboard];
415+
//自定义键盘位移
416+
[self customKeyboardMove:SCREEN_HEIGHT - Height(self.frame)];
417+
}else{
418+
[_msgTextView becomeFirstResponder];
419+
}
420+
}
421+
#pragma mark - 切换至语音录制
422+
- (void)audioButtonClick:(UIButton *)audioButton
423+
{
424+
audioButton.selected = !audioButton.selected;
425+
//刷新表情和操作按钮
426+
self.swtFaceButton.selected = NO;
427+
self.swtHandleButton.selected = NO;
428+
429+
if (audioButton.selected) {
430+
[_msgTextView resignFirstResponder];
431+
self.msgTextView.hidden = YES;
432+
self.audioLpButton.hidden = NO;
433+
[self customKeyboardMove:SCREEN_HEIGHT - 49]; //默认高度 输入栏 49
434+
}else{
435+
self.msgTextView.hidden = NO;
436+
self.audioLpButton.hidden = YES;
437+
[self.msgTextView becomeFirstResponder];
438+
}
418439
}
419440

420441
#pragma mark - 自定义键盘位移变化

0 commit comments

Comments
 (0)