| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- //
- // UserView.m
- // BuguLive
- //
- // Created by 志刚杨 on 2023/1/3.
- // Copyright © 2023 xfg. All rights reserved.
- //
- #import "UserView.h"
- @interface UserView ()
- @end
- @implementation UserView
- {
- YYAnimatedImageView *yyimg;
- }
- +(instancetype)getView
- {
- NSString *className = NSStringFromClass([self class]);
- UINib *nib = [UINib nibWithNibName:className bundle:nil];
- return [nib instantiateWithOwner:nil options:nil].firstObject;
- }
- -(void)frontView
- {
- [self bringSubviewToFront:self.userName];
- [self bringSubviewToFront:self.giftButton];
- [self bringSubviewToFront:self.numberLab];
- }
- #pragma mark - LifeCycle
- - (void)dealloc {
- [self removeNotificationObserver];
- }
- - (void)awakeFromNib {
- [super awakeFromNib];
- //设置view
- [self setupView];
-
- //请求数据
- [self requestData];
-
- //设置通知
- [self addNotificationObserver];
- self.layer.cornerRadius = 3;
- self.clipsToBounds = YES;
- // [self setSelect:YES];
-
- //添加手势
- UITapGestureRecognizer * tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGestureRecognizer:)];
- self.userInteractionEnabled = YES;
- [self addGestureRecognizer:tapGesture];
-
-
- self.muteVideoView.userInteractionEnabled = YES;
-
- yyimg = [[YYAnimatedImageView alloc] init];
- yyimg.image = [YYImage imageNamed:@"mic_pppp.webp"];
- self.breathView.hidden = NO;
- [self.breathView addSubview:yyimg];
- [yyimg mas_makeConstraints:^(MASConstraintMaker *make) {
- make.center.equalTo(self.breathView);
- make.size.equalTo(self.breathView);
- }];
-
-
- }
- - (void)setUid:(NSString *)uid
- {
- _uid = uid;
- if([_uid isEqualToString:[IMAPlatform sharedInstance].host.userId])
- {
- self.videoBtn.hidden = NO;
- self.voiceBtn.hidden = NO;
- }
- else
- {
- self.videoBtn.hidden = YES;
- self.voiceBtn.hidden = YES;
- }
-
- [self requestData];
- }
- - (void)handleTapGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer {
- NSLog(@"点击了userview");
- if([self.delegate respondsToSelector:@selector(clickUserView:)])
- {
- [self.delegate clickUserView:self];
- }
- }
- - (void)setSelect:(BOOL)select
- {
- _select = select;
- if(select)
- {
- self.layer.borderWidth = 2;
- self.layer.borderColor = [UIColor colorWithHex:0x891DC1].CGColor;
- }
- else
- {
- self.layer.borderWidth = 2;
- self.layer.borderColor = [UIColor clearColor].CGColor;
- }
- }
- #pragma mark - View
- - (void)setupView {
-
- }
- #pragma mark - Network
- - (void)requestData {
- //之前代码太过臃肿,这里为了解耦,独立请求数据
- NSMutableDictionary *parmDict = [NSMutableDictionary dictionary];
- [parmDict setObject:@"user" forKey:@"ctl"];
- [parmDict setObject:@"userinfo" forKey:@"act"];
- [parmDict setObject:SafeStr(self.uid) forKey:@"to_user_id"];
- FWWeakify(self)
- [[NetHttpsManager manager] POSTWithParameters:parmDict SuccessBlock:^(NSDictionary *responseJson)
- {
- FWStrongify(self)
- if ([responseJson toInt:@"status"] == 1)
- {
- UserModel *model = [UserModel mj_objectWithKeyValues:[responseJson objectForKey:@"user"]];
- [self.avatar sd_setImageWithURL:[NSURL URLWithString:SafeStr(model.head_image)] placeholderImage:kDefaultPreloadHeadImg];
-
- self.avatar.layer.borderColor = [UIColor colorWithHexString:@"#F95B4D"].CGColor;
- self.avatar.layer.borderWidth = 0.5;
- }else
- {
- }
-
- } FailureBlock:^(NSError *error)
- {
- FWStrongify(self)
-
- }];
- }
- #pragma mark- Delegate
- #pragma mark UITableDatasource & UITableviewDelegate
- #pragma mark - Private
- #pragma mark - Event
- #pragma mark - Public
- #pragma mark - NSNotificationCenter
- - (void)addNotificationObserver {
-
- }
- - (void)removeNotificationObserver {
-
- }
- #pragma mark - Setter
- #pragma mark - Getter
- - (IBAction)clickVideo:(id)sender {
- self.videoBtn.selected = !self.videoBtn.selected;
- self.muteVideoView.hidden = !self.muteVideoView.hidden;
- if(self.delegate && [self.delegate respondsToSelector:@selector(clickVideoBtn:)])
- {
- [self.delegate clickVideoBtn:self];
- }
- }
- - (IBAction)clickVoice:(id)sender {
- self.voiceBtn.selected = !self.voiceBtn.selected;
- if(self.delegate && [self.delegate respondsToSelector:@selector(clickVoiceBtn:)])
- {
- [self.delegate clickVoiceBtn:self];
- }
- }
- - (void)setTotalVolume:(int)totalVolume
- {
- _totalVolume = totalVolume;
- if(totalVolume > 5)
- {
- self.breathView.hidden = NO;
- }
- else
- {
- self.breathView.hidden = YES;
- }
- }
- - (IBAction)closeVideo:(id)sender {
- if(self.delegate && [self.delegate respondsToSelector:@selector(clickCloseBtn:)])
- {
- [self.delegate clickCloseBtn:self];
- }
- }
- @end
|