From e76725843860982ec84d873ded1197fc9f2c724e Mon Sep 17 00:00:00 2001 From: zu Date: Fri, 5 Nov 2021 16:08:44 +0800 Subject: [PATCH] =?UTF-8?q?=E9=BA=A6=E4=BD=8D=E6=98=BE=E7=A4=BA=E4=B8=8A?= =?UTF-8?q?=E7=9A=84=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Main/Room/View/StageView/MicroView/MicroView.m | 14 +++++++++++--- .../Room/View/StageView/MicroView/MicroWaveView.m | 3 +++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/xplan-ios/Main/Room/View/StageView/MicroView/MicroView.m b/xplan-ios/Main/Room/View/StageView/MicroView/MicroView.m index 5f1a27c6..2524e935 100644 --- a/xplan-ios/Main/Room/View/StageView/MicroView/MicroView.m +++ b/xplan-ios/Main/Room/View/StageView/MicroView/MicroView.m @@ -97,11 +97,19 @@ - (void)configMicroState:(MicroStateModel *)micState { self.micStateImageView.hidden = micState.micState == MicroMicStateType_Open; + UIImage *image; if (micState.posState == MicroPosStateType_Free) { - self.avatarImageView.image = [UIImage imageNamed:@"room_position_normal"]; + image = [UIImage imageNamed:@"room_position_normal"]; } else { - self.avatarImageView.image = [UIImage imageNamed:@"room_position_lock"]; + image = [UIImage imageNamed:@"room_position_lock"]; } + CGSize scaledToSize = CGSizeMake(self.frame.size.width, self.frame.size.width); + UIGraphicsBeginImageContextWithOptions(scaledToSize, false, 0.0); + // 缩小 “1” 点儿,防止默认背景的边缘被裁减。 + [image drawInRect:CGRectMake(1, 1, scaledToSize.width - 2, scaledToSize.height - 2)]; + UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); + UIGraphicsEndImageContext(); + self.avatarImageView.backgroundColor = [UIColor colorWithPatternImage:newImage]; self.postionLabel.text = [NSString stringWithFormat:@"%d", micState.position + 1]; } @@ -118,6 +126,7 @@ self.nickLabel.text = userInfo.nick; } } else { + self.avatarImageView.image = nil; [self.postionLabel setBackgroundColor:[ThemeColor positionNormalNickBackColor]]; } } @@ -127,7 +136,6 @@ if (!_avatarImageView) { _avatarImageView = [[NetImageView alloc] init]; _avatarImageView.userInteractionEnabled = YES; - _avatarImageView.image = [UIImage imageNamed:@"room_position_normal"]; } return _avatarImageView; } diff --git a/xplan-ios/Main/Room/View/StageView/MicroView/MicroWaveView.m b/xplan-ios/Main/Room/View/StageView/MicroView/MicroWaveView.m index c6ab720d..6b020865 100644 --- a/xplan-ios/Main/Room/View/StageView/MicroView/MicroWaveView.m +++ b/xplan-ios/Main/Room/View/StageView/MicroView/MicroWaveView.m @@ -42,12 +42,14 @@ return; } self.isAnimationing = YES; + self.firstView.hidden = NO; [self animationWithLayer:self.firstView]; } ///结束声波动画 - (void)stopWaveAnimation { self.isAnimationing = NO; + self.firstView.hidden = YES; [self.firstView.layer removeAllAnimations]; } @@ -55,6 +57,7 @@ #pragma mark - Private Method - (void)initSubViews { [self addSubview:self.firstView]; + self.firstView.hidden = YES; }