商店包版本修改 此commit置顶 1.0.3

This commit is contained in:
liyuhua
2024-03-23 20:47:19 +08:00
parent c971ac589e
commit cf2eeb9a00
72 changed files with 245 additions and 76 deletions

View File

@@ -88,6 +88,7 @@
239EA6532BAEA73100570127 /* RoomChatScreenContentCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 239EA6522BAEA73100570127 /* RoomChatScreenContentCell.swift */; };
239EA65A2BAEB48A00570127 /* RoomDynamicEffectView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 239EA6592BAEB48A00570127 /* RoomDynamicEffectView.swift */; };
239EA65F2BAED9B900570127 /* YinCustomAttachmentCoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 239EA65E2BAED9B900570127 /* YinCustomAttachmentCoding.swift */; };
239EA6642BAF03B400570127 /* YinGetPointGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = 239EA6632BAF03B400570127 /* YinGetPointGroup.m */; };
23EE96E02B9EB22100475D69 /* RoomMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23EE96DF2B9EB22100475D69 /* RoomMenuView.swift */; };
23EE96E22B9EB22F00475D69 /* RoomSendTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23EE96E12B9EB22F00475D69 /* RoomSendTextView.swift */; };
23EE96E62B9EE79A00475D69 /* RoomVCViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23EE96E52B9EE79A00475D69 /* RoomVCViewModel.swift */; };
@@ -256,6 +257,8 @@
239EA6522BAEA73100570127 /* RoomChatScreenContentCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomChatScreenContentCell.swift; sourceTree = "<group>"; };
239EA6592BAEB48A00570127 /* RoomDynamicEffectView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomDynamicEffectView.swift; sourceTree = "<group>"; };
239EA65E2BAED9B900570127 /* YinCustomAttachmentCoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YinCustomAttachmentCoding.swift; sourceTree = "<group>"; };
239EA6622BAF03B400570127 /* YinGetPointGroup.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = YinGetPointGroup.h; sourceTree = "<group>"; };
239EA6632BAF03B400570127 /* YinGetPointGroup.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = YinGetPointGroup.m; sourceTree = "<group>"; };
23EE96DF2B9EB22100475D69 /* RoomMenuView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomMenuView.swift; sourceTree = "<group>"; };
23EE96E12B9EB22F00475D69 /* RoomSendTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomSendTextView.swift; sourceTree = "<group>"; };
23EE96E52B9EE79A00475D69 /* RoomVCViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RoomVCViewModel.swift; sourceTree = "<group>"; };
@@ -1206,6 +1209,8 @@
E81A7BA92B885B1F009E736E /* yinmeng-ios-Bridging-Header.h */,
2311D6C92B91BBF2001C70AB /* RecordVoiceManager.h */,
2311D6CA2B91BBF2001C70AB /* RecordVoiceManager.m */,
239EA6622BAF03B400570127 /* YinGetPointGroup.h */,
239EA6632BAF03B400570127 /* YinGetPointGroup.m */,
239EA64F2BAE998E00570127 /* YYTextAsyncLayer+YinTextAsyncLayer.h */,
239EA6502BAE998E00570127 /* YYTextAsyncLayer+YinTextAsyncLayer.m */,
);
@@ -1413,6 +1418,7 @@
E8D15AE82B8CD47100369467 /* WebViewController.swift in Sources */,
E89F194B2B919ECB0098E797 /* ChatImageCell.swift in Sources */,
234E2E2A2B9AC07B00433CF7 /* MicSeatGiftValueView.swift in Sources */,
239EA6642BAF03B400570127 /* YinGetPointGroup.m in Sources */,
23EE96EA2B9F01F900475D69 /* RoomChatData.swift in Sources */,
E8D15AA12B89AF4F00369467 /* UserTokenObject.swift in Sources */,
234E2E0E2B99A24F00433CF7 /* RoomQuitItemModel.swift in Sources */,

View File

@@ -23,6 +23,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)initWithRecord;
-(void)stopRecord;
- (void)playFilePathVoice;
@end
NS_ASSUME_NONNULL_END

View File

@@ -2,7 +2,7 @@
// YYTextAsyncLayer+XPTextAsyncLayer.h
// xplan-ios
//
// Created by duoban on 2023/10/28.
// Created by yinmeng on 2023/10/28.
//
#import <YYText/YYTextAsyncLayer.h>

View File

@@ -2,7 +2,7 @@
// YYTextAsyncLayer+XPTextAsyncLayer.m
// xplan-ios
//
// Created by duoban on 2023/10/28.
// Created by yinmeng on 2023/10/28.
//
#import "YYTextAsyncLayer+YinTextAsyncLayer.h"

View File

@@ -0,0 +1,16 @@
//
// YinGetPointGroup.h
// yinmeng-ios
//
// Created by yinmeng on 2024/3/23.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface YinGetPointGroup : NSObject
+ (CAAnimationGroup *)getGroupPoint:(CGPoint)startPoint endPoint:(CGPoint)endPoint centerPoint:(CGPoint)centerPoint;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,68 @@
//
// YinGetPointGroup.m
// yinmeng-ios
//
// Created by yinmeng on 2024/3/23.
//
#import "YinGetPointGroup.h"
@implementation YinGetPointGroup
+ (CAAnimationGroup *)getGroupPoint:(CGPoint)startPoint endPoint:(CGPoint)endPoint centerPoint:(CGPoint)centerPoint{
CAKeyframeAnimation *animation0 = [CAKeyframeAnimation animation];
animation0.duration = 0.8;
animation0.keyPath = @"transform.scale";
animation0.values = @[@1.0,@1.5,@2.0,@1.5];
animation0.repeatCount = 1;
animation0.calculationMode = kCAAnimationCubic;
animation0.removedOnCompletion = NO;
animation0.fillMode = kCAFillModeForwards;
CAKeyframeAnimation *animation1 = [CAKeyframeAnimation animation];
animation1.duration = 0.8;
animation1.beginTime = 0.8;
animation1.keyPath = @"transform.scale";
animation1.values = @[@1.5,@2.0,@2.5,@3.0];
animation1.repeatCount = 1;
animation1.calculationMode = kCAAnimationCubic;
animation1.removedOnCompletion = NO;
animation1.fillMode = kCAFillModeForwards;
CAKeyframeAnimation *animation2 = [CAKeyframeAnimation animation];
animation2.duration = 0.8;
animation2.beginTime = 0.8;
animation2.keyPath = @"position";
animation2.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];;
animation2.values = @[[NSValue valueWithCGPoint:startPoint],[NSValue valueWithCGPoint:CGPointMake(centerPoint.x ,centerPoint.y)]];
animation2.repeatCount = 1;
animation2.removedOnCompletion = NO;
animation2.fillMode = kCAFillModeForwards;
CAKeyframeAnimation *animation3 = [CAKeyframeAnimation animation];
animation3.duration = 0.8;
animation3.beginTime = 2.6;//0.8+0.8+1
animation3.keyPath = @"transform.scale";
animation3.values = @[@3,@2.5,@2,@1.5,@1];
animation3.repeatCount = 1;
CAKeyframeAnimation *animation4 = [CAKeyframeAnimation animation];
animation4.duration = 0.8;
animation4.beginTime = 2.6;
animation4.keyPath = @"position";
animation4.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
animation4.values = @[[NSValue valueWithCGPoint:CGPointMake(centerPoint.x ,centerPoint.y)],[NSValue valueWithCGPoint:endPoint]];
animation4.repeatCount = 1;
CAAnimationGroup *group = [CAAnimationGroup animation];
group.duration = 3.2;
group.animations = @[animation0,animation1,animation2, animation3,animation4];
group.repeatCount = 1;
group.removedOnCompletion = NO;
group.fillMode = kCAFillModeForwards;
return group;
}
@end

View File

@@ -16,4 +16,4 @@
#import <NIMSDK/NIMSDK.h>
#import <YYText/YYText.h>
#import "UIView+VAP.h"
#import "YinGetPointGroup.h"

View File

@@ -2,7 +2,7 @@
// Enum.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// UIButtom+.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// UILabel+.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// YinClientInfoModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRankH5UrlModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// ChatCustomMsgModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// ChatMsgRemoteModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinCustomAttachmentCoding.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// HomeSearchNavView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/21.
// Created by yinmeng on 2024/3/21.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// HomeSearchRoomCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/21.
// Created by yinmeng on 2024/3/21.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// HomeSearchRoomModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/21.
// Created by yinmeng on 2024/3/21.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// HomeSearchRoomVC.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/21.
// Created by yinmeng on 2024/3/21.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// HomeSearchVC.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/21.
// Created by yinmeng on 2024/3/21.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// HomeVoiceSearchView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/20.
// Created by yinmeng on 2024/3/20.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatData.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// RoomDataModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// YinRoomAgoraManager.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRoomAudioanager.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRoomTRTCManager.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomVC.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import NIMSDK
import UIKit
@@ -332,6 +332,44 @@ extension RoomVC : NIMChatManagerDelegate, NIMChatroomManagerDelegate, NIMLoginM
}else if msg.messageType == .custom{
chatScreenView.dealWithCustomMsg(msg: msg)
roomEffectView.dealWithCustomMsg(msg: msg)
if let obj = msg.messageObject as? NIMCustomObject,let customObj = obj.attachment as? ChatCustomMsgModel{
if customObj.first == 3 || customObj.first == 12{
if let model = Deserialized<RectiveGiftModel>.toModel(with: customObj.data),let gift = model.gift == nil ? model.giftInfo : model.gift {
var userList:[String] = []
if userList.count <= 0 {
for item in model.targetUsers {
userList.append("\(item.uid)")
}
if userList.count <= 0{
userList.append(model.targetUid)
}
}
var starPoint = CGPoint(x: ScreenWidth/2, y: NavHeight)
if let point = micSeatView.getPointWithCell(uid: model.uid){
if point.x <= 0 || point.y <= 0{
}else{
starPoint = point
}
}
var curPoint = CGPoint(x: ScreenWidth/2, y: NavHeight)
for userUid in userList{
if let point = micSeatView.getPointWithCell(uid: userUid){
if point.x <= 0 || point.y <= 0{
}else{
curPoint = point
}
}
roomEffectView.startPlayAnimation(url: gift.giftUrl, start: starPoint, end: curPoint)
}
}
}
}
}
micSeatView.dealWithNotMessage(msg: msg)
menuView.dealWithNotMessage(msg: msg)

View File

@@ -2,7 +2,7 @@
// RoomVCViewModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// File.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/12.
// Created by yinmeng on 2024/3/12.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// MicSeatModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// MicSequenceModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// NormalMicSeatCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// MicSeatSuperView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// NormalMicSeatSuperView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit
@@ -258,7 +258,9 @@ extension NormalMicSeatSuperView:UICollectionViewDelegate,UICollectionViewDataSo
}
return cell
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
guard let roomUid = self.roomData?.roomId else { return }
let user = roomUserList[indexPath.row]
var index:Int = -2
@@ -312,7 +314,26 @@ extension NormalMicSeatSuperView:UICollectionViewDelegate,UICollectionViewDataSo
}
}
}
func getPointWithCell(uid:String)->CGPoint?{
if let user = roomOwnerView.user,let userId = user.uid{
if uid == "\(userId)"{
return CGPoint(x: ScreenWidth/2, y: UIDevice.scaleWidth(width: 152))
}
}
var point = CGPoint(x: 0, y: 0)
for i in 0..<8 {
if let cell = collectionView.cellForItem(at: IndexPath(row: i, section: 0)) as? NormalMicSeatCell{
if let user = cell.user,let curUid = user.uid,"\(curUid)" == uid{
let width = (ScreenWidth - UIDevice.scaleWidth(width: 20))/4
let x = CGFloat(i) * width + UIDevice.scaleWidth(width: 10) + width / 2
point = CGPoint(x: x, y: i < 4 ? UIDevice.scaleWidth(width: 273) : UIDevice.scaleWidth(width: 418))
break
}
}
}
return point
}
func dealWithNotMessage(msg:NIMMessage){
if let notMsg = msg.messageObject as? NIMNotificationObject,let content = notMsg.content as? NIMChatroomNotificationContent{
switch content.eventType {

View File

@@ -2,7 +2,7 @@
// MicSeatGiftNumView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// NormalMicSeatView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomNormalMicSeatView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/7.
// Created by yinmeng on 2024/3/7.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomBackgroundView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomMsgListModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/12.
// Created by yinmeng on 2024/3/12.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatScreenContentCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatScreenHeaderView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatScreenUserChatView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatScreenView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/8.
// Created by yinmeng on 2024/3/8.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomChatScreenManager.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,11 +2,11 @@
// RoomDynamicEffectView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit
import Nuke
class RoomDynamicEffectView: UIView{
@@ -20,6 +20,7 @@ class RoomDynamicEffectView: UIView{
fatalError("init(coder:) has not been implemented")
}
private func setUILayout(){
backgroundColor = .clear
addSubview(vapView)
addSubview(svgaView)
vapView.snp.makeConstraints { make in
@@ -53,7 +54,7 @@ class RoomDynamicEffectView: UIView{
return _svgaParser
}()
var giftViewList:NSMutableSet = []
}
extension RoomDynamicEffectView:SVGAPlayerDelegate,HWDMP4PlayDelegate {
@@ -69,8 +70,9 @@ extension RoomDynamicEffectView:SVGAPlayerDelegate,HWDMP4PlayDelegate {
func playSvgaEffect(model:RectiveGiftModel){
guard let gift = model.gift == nil ? model.giftInfo : model.gift else { return }
if let url = URL(string: gift.vggUrl){
svgaView.isHidden = false
svgaParser.parse(with: url) { item in
self.svgaView.isHidden = false
if let _item = item{
let width = _item.videoSize.width
let height = _item.videoSize.height
@@ -139,10 +141,26 @@ extension RoomDynamicEffectView:SVGAPlayerDelegate,HWDMP4PlayDelegate {
vapView.isHidden = true
svgaView.isHidden = true
}
func startPlayAnimation(url:String,start:CGPoint,end:CGPoint){
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: UIDevice.scaleWidth(width: 55), height: UIDevice.scaleWidth(width: 55)))
imageView.center = start
imageView.layer.anchorPoint = CGPoint(x: 0.5, y: 0.5)
Nuke.loadImage(with: url, into: imageView, completion: nil)
self.addSubview(imageView)
let g = YinGetPointGroup.getPoint(start, end: end, center: CGPoint(x: ScreenWidth/2, y: ScreenHeight/2))
imageView.layer.add(g, forKey: "kPlayAnimation")
self.perform(#selector(imageViewDidFinish(imageView:)), with: imageView, afterDelay: 4)
}
@objc func imageViewDidFinish(imageView:UIImageView){
imageView.removeFromSuperview()
imageView.image = nil
}
func dealWithCustomMsg(msg:NIMMessage){
if let obj = msg.messageObject{
print(obj)
}
if let obj = msg.messageObject as? NIMCustomObject,let customObj = obj.attachment as? ChatCustomMsgModel{
if customObj.first == 3 || customObj.first == 12{
if let model = Deserialized<RectiveGiftModel>.toModel(with: customObj.data),let gift = model.gift == nil ? model.giftInfo : model.gift {

View File

@@ -2,7 +2,7 @@
// RoomMenuView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomSendTextView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/11.
// Created by yinmeng on 2024/3/11.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitItemModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/7.
// Created by yinmeng on 2024/3/7.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import Foundation

View File

@@ -2,7 +2,7 @@
// RoomQuitViewModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/7.
// Created by yinmeng on 2024/3/7.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitClickCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitUserInfoCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitUserInfoEmptyCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomQuitView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRoomRankModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RoomTopView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/6.
// Created by yinmeng on 2024/3/6.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRoomRankItemView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// YinRoomRankView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RectiveGiftModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// RectiveGiftUserModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/23.
// Created by yinmeng on 2024/3/23.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftSendNumModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftUserModel.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/14.
// Created by yinmeng on 2024/3/14.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftSendNumCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftSendNumView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit
@@ -58,6 +58,7 @@ class SendGiftSendNumView: UIView {
}
//MARK: -
var listData:[SendGiftSendNumModel] = []
private lazy var visualEffectView:UIVisualEffectView = {

View File

@@ -2,7 +2,7 @@
// SendGiftSendView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftTopView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/14.
// Created by yinmeng on 2024/3/14.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftUserCell.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/14.
// Created by yinmeng on 2024/3/14.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftUserView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/14.
// Created by yinmeng on 2024/3/14.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftVC.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit

View File

@@ -2,7 +2,7 @@
// SendGiftView.swift
// yinmeng-ios
//
// Created by duoban on 2024/3/22.
// Created by yinmeng on 2024/3/22.
//
import UIKit