Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
iOSTeam
/
Majiabao
/
TealiveModule
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
f547837b
authored
May 27, 2024
by
pierce
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed bugs
parent
c71c6e1a
Show whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
201 additions
and
123 deletions
LocalPodSpec/GDStreamPlayerHelper/GDStreamPlayerHelper/Classes/URLVideo/GDURLVideoPlayView.swift
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/Model/GDSingleChatMessageModel.swift
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/View/Cell/GDSingleChatMessageImageCell.swift
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/ViewModel/GDSingleChatViewModel.swift
Module/GDDataManager/GDDataManager/DataCenter/ResourceCenter/GDResourceCenter.swift
Module/GDDataManager/GDDataManager/Models/GDAPNSSwitchModel.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/ChatInputView/GDLiveChatInputView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/GiftPanelView/GDGiftPanelView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/Management/AdminManagement/GDLiveAdminManageController.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/Management/AdminManagement/GDLiveAdminManageTableView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/ViewModel/GDLiveAdminManageViewModel.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/AnchorView/GDPKAnchorSelectView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/PKRecord/GDPKRecordView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/RandomMatch/GDPKRandomMatchView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/RuleView/GDPKPanelRuleView.swift
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/Setting/GDPKPanelSettingView.swift
Module/GDTeenagerModule/GDTeenagerModule/Features/TeenagerMode/TeenagerPlayView/GDTeenagerPlayController.swift
LocalPodSpec/GDStreamPlayerHelper/GDStreamPlayerHelper/Classes/URLVideo/GDURLVideoPlayView.swift
View file @
f547837b
...
@@ -146,6 +146,7 @@ public class GDURLVideoPlayView: BaseView {
...
@@ -146,6 +146,7 @@ public class GDURLVideoPlayView: BaseView {
}
}
public
func
play
()
{
public
func
play
()
{
try
?
AVAudioSession
.
sharedInstance
()
.
setCategory
(
.
playback
)
engine
.
play
()
engine
.
play
()
}
}
...
...
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/Model/GDSingleChatMessageModel.swift
View file @
f547837b
...
@@ -56,6 +56,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -56,6 +56,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
private
lazy
var
statusDisposeBag
=
DisposeBag
()
private
lazy
var
statusDisposeBag
=
DisposeBag
()
private
lazy
var
imageDownloadDisposeBag
=
DisposeBag
()
private
lazy
var
imageDownloadDisposeBag
=
DisposeBag
()
let
messageId
:
NSString
let
type
:
GDChatMessageType
let
type
:
GDChatMessageType
let
timeStamp
:
Int64
let
timeStamp
:
Int64
let
status
=
BehaviorRelay
<
EMMessageStatus
>
(
value
:
EMMessageStatusPending
)
let
status
=
BehaviorRelay
<
EMMessageStatus
>
(
value
:
EMMessageStatusPending
)
...
@@ -82,6 +83,8 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -82,6 +83,8 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
self
.
timeStamp
=
Int64
(
Date
()
.
milliStamp
.
intValue
)
self
.
timeStamp
=
Int64
(
Date
()
.
milliStamp
.
intValue
)
self
.
message
=
message
self
.
message
=
message
self
.
messageId
=
"
\(
self
.
timeStamp
)
"
as
NSString
super
.
init
()
super
.
init
()
}
}
...
@@ -108,10 +111,17 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -108,10 +111,17 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
}
}
self
.
message
=
message
self
.
message
=
message
self
.
userInfo
=
GDRouter
.
Friend
?
.
friendModel
(
for
:
message
.
conversationId
)
self
.
userInfo
=
GDRouter
.
Friend
?
.
friendModel
(
for
:
message
.
conversationId
)
self
.
timeStamp
=
message
.
timestamp
self
.
timeStamp
=
message
.
timestamp
if
let
messageId
=
message
.
messageId
as?
NSString
{
self
.
messageId
=
messageId
}
else
{
self
.
messageId
=
"
\(
self
.
timeStamp
)
"
as
NSString
}
super
.
init
()
super
.
init
()
self
.
status
.
accept
(
message
.
status
)
self
.
status
.
accept
(
message
.
status
)
...
@@ -178,6 +188,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -178,6 +188,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
self
.
timeStamp
=
time
self
.
timeStamp
=
time
self
.
message
=
message
self
.
message
=
message
self
.
messageId
=
"
\(
time
)
"
as
NSString
super
.
init
()
super
.
init
()
...
@@ -195,6 +206,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -195,6 +206,7 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
self
.
timeStamp
=
time
self
.
timeStamp
=
time
self
.
message
=
message
??
EMMessage
()
self
.
message
=
message
??
EMMessage
()
self
.
messageId
=
"
\(
time
)
"
as
NSString
super
.
init
()
super
.
init
()
...
@@ -243,6 +255,42 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
...
@@ -243,6 +255,42 @@ class GDSingleChatMessageModel: GDSingleChatMessageImageModel {
}
}
func
updateWithModel
(
_
model
:
GDSingleChatMessageModel
)
{
if
self
.
message
.
body
.
type
!=
model
.
message
.
body
.
type
||
self
.
message
.
messageId
!=
model
.
message
.
messageId
{
return
}
self
.
message
=
model
.
message
self
.
status
.
accept
(
model
.
message
.
status
)
// 未成功的消息需要监听
if
model
.
message
.
status
!=
EMMessageStatusSucceed
{
GDIMCenter
.
shared
.
messageStatusChange
.
subscribe
(
onNext
:
{[
weak
self
]
message
in
guard
let
self
=
self
else
{
return
}
if
message
.
messageId
==
self
.
message
.
messageId
{
self
.
message
.
status
=
message
.
status
self
.
status
.
accept
(
message
.
status
)
if
message
.
status
==
EMMessageStatusSucceed
{
self
.
statusDisposeBag
=
DisposeBag
()
}
}
})
.
disposed
(
by
:
statusDisposeBag
)
}
self
.
isRead
.
accept
(
model
.
message
.
isReadAcked
)
self
.
thumbnailImageSize
=
model
.
thumbnailImageSize
self
.
imageUploadProgress
.
accept
(
model
.
imageUploadProgress
.
value
)
self
.
thumbnailImage
.
accept
(
model
.
thumbnailImage
.
value
)
self
.
contentImage
.
accept
(
model
.
contentImage
.
value
)
caculateHeight
()
}
func
parse
()
{
func
parse
()
{
switch
type
{
switch
type
{
...
...
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/View/Cell/GDSingleChatMessageImageCell.swift
View file @
f547837b
...
@@ -25,6 +25,7 @@ class GDSingleChatMessageImageCell: GDSingleChatMessageBaseCell {
...
@@ -25,6 +25,7 @@ class GDSingleChatMessageImageCell: GDSingleChatMessageBaseCell {
private
let
contentImageView
=
UIImageView
(
frame
:
.
zero
)
private
let
contentImageView
=
UIImageView
(
frame
:
.
zero
)
private
func
makeContentImageView
()
{
private
func
makeContentImageView
()
{
contentImageView
.
backgroundColor
=
.
lightGray
contentImageView
.
contentMode
=
.
scaleAspectFill
contentImageView
.
contentMode
=
.
scaleAspectFill
contentImageView
.
layer
.
cornerRadius
=
10
contentImageView
.
layer
.
cornerRadius
=
10
contentImageView
.
layer
.
masksToBounds
=
true
contentImageView
.
layer
.
masksToBounds
=
true
...
...
Module/GDChatMessage/GDChatMessage/Features/SingleChat/SingleChat/ViewModel/GDSingleChatViewModel.swift
View file @
f547837b
...
@@ -284,6 +284,14 @@ class GDSingleChatViewModel: BaseViewModel {
...
@@ -284,6 +284,14 @@ class GDSingleChatViewModel: BaseViewModel {
continue
continue
}
}
}
}
// 图片消息特殊处理
if
let
body
=
msg
.
body
as?
EMImageMessageBody
{
if
body
.
thumbnailDownloadStatus
!=
EMDownloadStatusSucceed
{
// 如果没有下载好,需要下载完成之后发布新消息
continue
}
}
}
}
if
msg
.
status
==
EMMessageStatusPending
{
if
msg
.
status
==
EMMessageStatusPending
{
...
@@ -337,6 +345,11 @@ class GDSingleChatViewModel: BaseViewModel {
...
@@ -337,6 +345,11 @@ class GDSingleChatViewModel: BaseViewModel {
var
hadTimeModel
=
false
var
hadTimeModel
=
false
var
hadRecording
=
false
var
hadRecording
=
false
if
let
existMsg
=
self
.
messageList
.
value
.
last
(
where
:
{
$0
.
messageId
==
model
.
messageId
})
{
existMsg
.
updateWithModel
(
model
)
return
}
if
let
last
=
oldData
.
last
{
if
let
last
=
oldData
.
last
{
if
last
.
type
==
.
voiceRecording
{
if
last
.
type
==
.
voiceRecording
{
...
...
Module/GDDataManager/GDDataManager/DataCenter/ResourceCenter/GDResourceCenter.swift
View file @
f547837b
...
@@ -401,8 +401,9 @@ class GDResourceCenter: BaseViewModel {
...
@@ -401,8 +401,9 @@ class GDResourceCenter: BaseViewModel {
private
func
writeToMemory
(
giftData
:
LiveGiftData
)
{
private
func
writeToMemory
(
giftData
:
LiveGiftData
)
{
advArr
.
accept
(
giftData
.
adv
)
advArr
.
accept
(
giftData
.
adv
)
liveGiftDict
.
accept
(
giftData
.
giftDict
)
liveGiftDict
.
accept
(
giftData
.
giftDict
)
liveGiftTab
.
accept
(
giftData
.
tabArr
)
//TODO:守护: added By Pidan
foriegnLiveGiftTab
.
accept
(
giftData
.
foriegnTabArr
)
liveGiftTab
.
accept
(
giftData
.
tabArr
.
filter
({
$0
.
tabType
!=
.
guardian
}))
foriegnLiveGiftTab
.
accept
(
giftData
.
foriegnTabArr
.
filter
({
$0
.
tabType
!=
.
guardian
}))
wishGiftList
.
accept
(
giftData
.
wishArr
)
wishGiftList
.
accept
(
giftData
.
wishArr
)
}
}
...
...
Module/GDDataManager/GDDataManager/Models/GDAPNSSwitchModel.swift
View file @
f547837b
...
@@ -20,7 +20,9 @@ extension GDAPNSSwitchModel: NetworkArrType {
...
@@ -20,7 +20,9 @@ extension GDAPNSSwitchModel: NetworkArrType {
}
}
public
static
func
createArrFrom
(
_
json
:
JSON
)
->
[
GDAPNSSwitchModel
]
{
public
static
func
createArrFrom
(
_
json
:
JSON
)
->
[
GDAPNSSwitchModel
]
{
return
json
[
"switchList"
]
.
arrayValue
.
map
{
GDAPNSSwitchModel
.
createFrom
(
$0
)
}
let
list
=
json
[
"switchList"
]
.
arrayValue
.
map
{
GDAPNSSwitchModel
.
createFrom
(
$0
)
}
//TODO:Live: added By Pidan
return
list
.
filter
({
$0
.
name
!=
"签到通知"
&&
$0
.
name
!=
"贵人通知"
&&
$0
.
name
!=
"战队通知"
&&
$0
.
name
!=
"战队通知"
})
}
}
}
}
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/ChatInputView/GDLiveChatInputView.swift
View file @
f547837b
...
@@ -148,18 +148,19 @@ class GDLiveChatInputView: BaseView {
...
@@ -148,18 +148,19 @@ class GDLiveChatInputView: BaseView {
}
}
case
.
audienceMore
:
case
.
audienceMore
:
// 展示任务中心红点
break
let
unreadView
=
UIView
(
frame
:
.
zero
)
// // 展示任务中心红点
unreadView
.
backgroundColor
=
.
red
// let unreadView = UIView(frame: .zero)
unreadView
.
layer
.
masksToBounds
=
true
// unreadView.backgroundColor = .red
unreadView
.
layer
.
cornerRadius
=
4
// unreadView.layer.masksToBounds = true
btn
.
addSubview
(
unreadView
)
// unreadView.layer.cornerRadius = 4
// btn.addSubview(unreadView)
unreadView
.
snp
.
makeConstraints
{
make
in
//
make
.
width
.
height
.
equalTo
(
8
)
// unreadView.snp.makeConstraints { make in
make
.
top
.
equalToSuperview
()
// make.width.height.equalTo(8)
make
.
right
.
equalToSuperview
()
// make.top.equalToSuperview()
}
// make.right.equalToSuperview()
// }
//TODO:战队: added By Pidan
//TODO:战队: added By Pidan
...
@@ -195,18 +196,19 @@ class GDLiveChatInputView: BaseView {
...
@@ -195,18 +196,19 @@ class GDLiveChatInputView: BaseView {
// }).disposed(by: disposeBag)
// }).disposed(by: disposeBag)
case
.
anchorMore
:
case
.
anchorMore
:
// 展示任务中心红点
break
let
unreadView
=
UIView
(
frame
:
.
zero
)
// // 展示任务中心红点
unreadView
.
backgroundColor
=
.
red
// let unreadView = UIView(frame: .zero)
unreadView
.
layer
.
masksToBounds
=
true
// unreadView.backgroundColor = .red
unreadView
.
layer
.
cornerRadius
=
4
// unreadView.layer.masksToBounds = true
btn
.
addSubview
(
unreadView
)
// unreadView.layer.cornerRadius = 4
// btn.addSubview(unreadView)
unreadView
.
snp
.
makeConstraints
{
make
in
//
make
.
width
.
height
.
equalTo
(
8
)
// unreadView.snp.makeConstraints { make in
make
.
top
.
equalToSuperview
()
// make.width.height.equalTo(8)
make
.
right
.
equalToSuperview
()
// make.top.equalToSuperview()
}
// make.right.equalToSuperview()
// }
//TODO:战队: added By Pidan
//TODO:战队: added By Pidan
// func refreshFightTeamUnread(for unreadView: UIView) {
// func refreshFightTeamUnread(for unreadView: UIView) {
...
@@ -257,20 +259,21 @@ class GDLiveChatInputView: BaseView {
...
@@ -257,20 +259,21 @@ class GDLiveChatInputView: BaseView {
// }
// }
// }).disposed(by: disposeBag)
// }).disposed(by: disposeBag)
case
.
gift
:
case
.
gift
:
let
unreadView
=
UIView
(
frame
:
.
zero
)
unreadView
.
backgroundColor
=
.
red
unreadView
.
layer
.
masksToBounds
=
true
unreadView
.
layer
.
cornerRadius
=
4
btn
.
addSubview
(
unreadView
)
unreadView
.
snp
.
makeConstraints
{
make
in
make
.
width
.
height
.
equalTo
(
8
)
make
.
top
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
}
//TODO:新人引导: added By Pidan
//TODO:新人引导: added By Pidan
// let unreadView = UIView(frame: .zero)
// unreadView.backgroundColor = .red
// unreadView.layer.masksToBounds = true
// unreadView.layer.cornerRadius = 4
// btn.addSubview(unreadView)
//
// unreadView.snp.makeConstraints { make in
// make.width.height.equalTo(8)
// make.top.equalToSuperview()
// make.right.equalToSuperview()
// }
// GDRouter.DataRouter?.hadUserOpenLiveRoomGiftPanel.bind(to: unreadView.rx.isHidden).disposed(by: disposeBag)
// GDRouter.DataRouter?.hadUserOpenLiveRoomGiftPanel.bind(to: unreadView.rx.isHidden).disposed(by: disposeBag)
break
default
:
default
:
break
break
}
}
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/GiftPanelView/GDGiftPanelView.swift
View file @
f547837b
...
@@ -1215,18 +1215,19 @@ class GDGiftPanelView: BaseView {
...
@@ -1215,18 +1215,19 @@ class GDGiftPanelView: BaseView {
self
.
emptyView
.
isHidden
=
false
self
.
emptyView
.
isHidden
=
false
if
GDLiveHelper
.
shared
.
liveConfig
.
value
.
showdraw
&&
GDRouter
.
BaseBusinessRouter
?
.
isCurrentVersionVerified
.
value
==
false
{
if
GDLiveHelper
.
shared
.
liveConfig
.
value
.
showdraw
&&
GDRouter
.
BaseBusinessRouter
?
.
isCurrentVersionVerified
.
value
==
false
{
let
attr
=
NSMutableAttributedString
(
string
:
"背包暂无物品"
,
attributes
:
[
.
foregroundColor
:
UIColor
.
white
,
.
font
:
UIFont
.
gd_pingfang
(
14
)])
let
attr
=
NSMutableAttributedString
(
string
:
"背包暂无物品,可至"
,
attributes
:
[
.
foregroundColor
:
UIColor
.
white
,
.
font
:
UIFont
.
gd_pingfang
(
14
)])
attr
.
append
(
.
init
(
string
:
"幸运转盘"
,
attributes
:
[
.
foregroundColor
:
UIColor
.
gd_second
,
.
font
:
UIFont
.
gd_pingfang
(
14
)]))
attr
.
append
(
.
init
(
string
:
"获取"
,
attributes
:
[
.
foregroundColor
:
UIColor
.
white
,
.
font
:
UIFont
.
gd_pingfang
(
14
)]))
attr
.
setTextHighlight
(
attr
.
rangeOfAll
(),
color
:
nil
,
backgroundColor
:
nil
)
{[
weak
self
]
(
view
,
attr
,
range
,
rect
)
in
self
?
.
dismiss
()
//TODO:转盘: added By Pidan
//TODO:转盘: added By Pidan
// if let functionView = GDLiveHelper.shared.liveVC?.functionView as? GDLiveFunctionView {
// let attr = NSMutableAttributedString(string: "背包暂无物品,可至", attributes: [.foregroundColor: UIColor.white, .font: UIFont.gd_pingfang(14)])
// functionView.showTurnplateView()
//
// attr.append(.init(string: "幸运转盘", attributes: [.foregroundColor: UIColor.gd_second, .font: UIFont.gd_pingfang(14)]))
// attr.append(.init(string: "获取", attributes: [.foregroundColor: UIColor.white, .font: UIFont.gd_pingfang(14)]))
// attr.setTextHighlight(attr.rangeOfAll(), color: nil, backgroundColor: nil) {[weak self] (view, attr, range, rect) in
// self?.dismiss()
// //TODO:转盘: added By Pidan
//// if let functionView = GDLiveHelper.shared.liveVC?.functionView as? GDLiveFunctionView {
//// functionView.showTurnplateView()
//// }
// }
// }
}
let
pagraphStyle
=
NSMutableParagraphStyle
()
let
pagraphStyle
=
NSMutableParagraphStyle
()
pagraphStyle
.
setParagraphStyle
(
.
default
)
pagraphStyle
.
setParagraphStyle
(
.
default
)
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/Management/AdminManagement/GDLiveAdminManageController.swift
View file @
f547837b
...
@@ -9,7 +9,9 @@
...
@@ -9,7 +9,9 @@
import
UIKit
import
UIKit
import
GDToolBox
import
GDToolBox
fileprivate
let
typeArr
:
[
GDLiveAdminManageType
]
=
[
.
normal
,
.
guardian
]
//TODO:守护: added By Pidan
//fileprivate let typeArr: [GDLiveAdminManageType] = [.normal, .guardian]
fileprivate
let
typeArr
:
[
GDLiveAdminManageType
]
=
[
.
normal
]
class
GDLiveAdminManageController
:
BaseViewController
{
class
GDLiveAdminManageController
:
BaseViewController
{
// MARK: UI
// MARK: UI
...
@@ -17,8 +19,8 @@ class GDLiveAdminManageController: BaseViewController {
...
@@ -17,8 +19,8 @@ class GDLiveAdminManageController: BaseViewController {
super
.
makeUI
()
super
.
makeUI
()
self
.
title
=
"场控管理"
self
.
title
=
"场控管理"
//TODO:守护: added By Pidan
makeSegmentView
()
//
makeSegmentView()
makeScrollView
()
makeScrollView
()
...
@@ -26,65 +28,65 @@ class GDLiveAdminManageController: BaseViewController {
...
@@ -26,65 +28,65 @@ class GDLiveAdminManageController: BaseViewController {
private
let
selectedType
=
BehaviorRelay
<
GDLiveAdminManageType
>
(
value
:
.
normal
)
private
let
selectedType
=
BehaviorRelay
<
GDLiveAdminManageType
>
(
value
:
.
normal
)
private
let
segmentView
=
UIView
(
frame
:
.
zero
)
//
private let segmentView = UIView(frame: .zero)
private
let
scrollView
=
UIScrollView
(
frame
:
.
zero
)
private
let
scrollView
=
UIScrollView
(
frame
:
.
zero
)
private
var
draging
=
false
private
var
draging
=
false
private
let
segmentHeight
:
CGFloat
=
55
private
let
segmentHeight
:
CGFloat
=
55
private
func
makeSegmentView
()
{
private
func
makeSegmentView
()
{
segmentView
.
backgroundColor
=
.
white
//
segmentView.backgroundColor = .white
self
.
view
.
addSubview
(
segmentView
)
//
self.view.addSubview(segmentView)
for
(
index
,
type
)
in
typeArr
.
enumerated
()
{
//
for (index, type) in typeArr.enumerated() {
let
btn
=
UIButton
(
type
:
.
custom
)
//
let btn = UIButton(type: .custom)
btn
.
setTitle
(
type
.
title
,
for
:
.
normal
)
//
btn.setTitle(type.title, for: .normal)
btn
.
setTitleColor
(
.
black
,
for
:
.
selected
)
//
btn.setTitleColor(.black, for: .selected)
btn
.
setTitleColor
(
.
init
(
white
:
0.5
,
alpha
:
1
),
for
:
.
normal
)
//
btn.setTitleColor(.init(white: 0.5, alpha: 1), for: .normal)
btn
.
frame
=
.
init
(
x
:
CGFloat
(
index
)
*
(
GDScreen
.
width
/
2.0
),
y
:
0
,
width
:
GDScreen
.
width
/
2.0
,
height
:
segmentHeight
)
//
btn.frame = .init(x: CGFloat(index) * (GDScreen.width / 2.0), y: 0, width: GDScreen.width / 2.0, height: segmentHeight)
btn
.
contentVerticalAlignment
=
.
center
//
btn.contentVerticalAlignment = .center
btn
.
contentHorizontalAlignment
=
.
center
//
btn.contentHorizontalAlignment = .center
btn
.
titleLabel
?
.
font
=
.
gd_pingfang
(
14
)
//
btn.titleLabel?.font = .gd_pingfang(14)
segmentView
.
addSubview
(
btn
)
//
segmentView.addSubview(btn)
//
btn
.
rx
.
tap
.
subscribe
(
onNext
:
{[
weak
self
]
_
in
//
btn.rx.tap.subscribe(onNext: {[weak self] _ in
self
?
.
selectedType
.
accept
(
type
)
//
self?.selectedType.accept(type)
})
.
disposed
(
by
:
disposeBag
)
//
}).disposed(by: disposeBag)
//
selectedType
//
selectedType
.
map
{
$0
==
type
}
//
.map { $0 == type }
.
bind
(
to
:
btn
.
rx
.
isSelected
)
//
.bind(to: btn.rx.isSelected)
.
disposed
(
by
:
disposeBag
)
//
.disposed(by: disposeBag)
}
//
}
let
indicatorView
=
UIView
(
frame
:
.
zero
)
//
let indicatorView = UIView(frame: .zero)
indicatorView
.
backgroundColor
=
.
black
//
indicatorView.backgroundColor = .black
indicatorView
.
frame
=
.
init
(
x
:
0
,
y
:
0
,
width
:
GDScreen
.
width
/
2.0
,
height
:
3
)
//
indicatorView.frame = .init(x: 0, y: 0, width: GDScreen.width / 2.0, height: 3)
indicatorView
.
y
=
segmentHeight
-
indicatorView
.
height
//
indicatorView.y = segmentHeight - indicatorView.height
segmentView
.
addSubview
(
indicatorView
)
//
segmentView.addSubview(indicatorView)
//
self
.
selectedType
.
distinctUntilChanged
()
.
subscribe
(
onNext
:
{
type
in
//
self.selectedType.distinctUntilChanged().subscribe(onNext: { type in
//
if
let
index
=
typeArr
.
firstIndex
(
of
:
type
)
{
//
if let index = typeArr.firstIndex(of: type) {
indicatorView
.
x
=
CGFloat
(
index
)
*
(
GDScreen
.
width
/
2.0
)
//
indicatorView.x = CGFloat(index) * (GDScreen.width / 2.0)
}
//
}
//
})
.
disposed
(
by
:
disposeBag
)
//
}).disposed(by: disposeBag)
//
let
lineView
=
UIView
(
frame
:
.
zero
)
//
let lineView = UIView(frame: .zero)
lineView
.
backgroundColor
=
.
init
(
white
:
0
,
alpha
:
0.1
)
//
lineView.backgroundColor = .init(white: 0, alpha: 0.1)
segmentView
.
addSubview
(
lineView
)
//
segmentView.addSubview(lineView)
//
segmentView
.
snp
.
makeConstraints
{
make
in
//
segmentView.snp.makeConstraints { make in
make
.
top
.
equalToSuperview
()
.
offset
(
4
)
//
make.top.equalToSuperview().offset(4)
make
.
left
.
right
.
equalToSuperview
()
//
make.left.right.equalToSuperview()
make
.
height
.
equalTo
(
segmentHeight
)
//
make.height.equalTo(segmentHeight)
}
//
}
//
lineView
.
snp
.
makeConstraints
{
make
in
//
lineView.snp.makeConstraints { make in
make
.
left
.
right
.
bottom
.
equalToSuperview
()
//
make.left.right.bottom.equalToSuperview()
make
.
height
.
equalTo
(
0.5
)
//
make.height.equalTo(0.5)
}
//
}
//
}
}
private
func
makeScrollView
()
{
private
func
makeScrollView
()
{
...
@@ -104,9 +106,10 @@ class GDLiveAdminManageController: BaseViewController {
...
@@ -104,9 +106,10 @@ class GDLiveAdminManageController: BaseViewController {
}
}
scrollView
.
snp
.
makeConstraints
{
make
in
scrollView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
right
.
equalToSuperview
()
make
.
left
.
right
.
top
.
bottom
.
equalToSuperview
()
make
.
top
.
equalTo
(
segmentView
.
snp
.
bottom
)
//TODO:守护: added By Pidan
make
.
height
.
equalTo
(
self
.
view
.
height
-
segmentHeight
-
navigationHeight
)
// make.top.equalTo(segmentView.snp.bottom)
make
.
height
.
equalTo
(
self
.
view
.
height
/*- segmentHeight*/
-
navigationHeight
)
}
}
}
}
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/View/Management/AdminManagement/GDLiveAdminManageTableView.swift
View file @
f547837b
...
@@ -53,11 +53,12 @@ class GDLiveAdminManageTableView: BaseView {
...
@@ -53,11 +53,12 @@ class GDLiveAdminManageTableView: BaseView {
tableView
.
tableHeaderView
=
titleLabel
tableView
.
tableHeaderView
=
titleLabel
let
footLabel
=
UILabel
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
GDScreen
.
width
,
height
:
30
))
let
footLabel
=
UILabel
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
GDScreen
.
width
,
height
:
30
))
if
viewModel
.
type
==
.
guardian
{
//TODO:守护: added By Pidan
footLabel
.
text
=
" 提示:守护场控无个数上限"
// if viewModel.type == .guardian {
}
else
{
// footLabel.text = " 提示:守护场控无个数上限"
// } else {
footLabel
.
text
=
" 提示:最多可同时设置8个场控"
footLabel
.
text
=
" 提示:最多可同时设置8个场控"
}
//
}
footLabel
.
backgroundColor
=
.
clear
footLabel
.
backgroundColor
=
.
clear
footLabel
.
font
=
.
gd_default
(
14
)
footLabel
.
font
=
.
gd_default
(
14
)
footLabel
.
textColor
=
.
hexColor
(
"666666"
)
footLabel
.
textColor
=
.
hexColor
(
"666666"
)
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/Function/ViewModel/GDLiveAdminManageViewModel.swift
View file @
f547837b
...
@@ -13,14 +13,16 @@ import GDToolBox
...
@@ -13,14 +13,16 @@ import GDToolBox
enum
GDLiveAdminManageType
{
enum
GDLiveAdminManageType
{
case
normal
case
normal
case
guardian
//TODO:守护: added By Pidan
// case guardian
var
title
:
String
?
{
var
title
:
String
?
{
switch
self
{
switch
self
{
case
.
normal
:
case
.
normal
:
return
"设置场控"
return
"设置场控"
case
.
guardian
:
//TODO:守护: added By Pidan
return
"守护场控"
// case .guardian:
// return "守护场控"
}
}
}
}
...
@@ -28,8 +30,9 @@ enum GDLiveAdminManageType {
...
@@ -28,8 +30,9 @@ enum GDLiveAdminManageType {
switch
self
{
switch
self
{
case
.
normal
:
case
.
normal
:
return
"1"
return
"1"
case
.
guardian
:
//TODO:守护: added By Pidan
return
"2"
// case .guardian:
// return "2"
}
}
}
}
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/AnchorView/GDPKAnchorSelectView.swift
View file @
f547837b
...
@@ -89,7 +89,7 @@ class GDPKAnchorSelectView: BaseView {
...
@@ -89,7 +89,7 @@ class GDPKAnchorSelectView: BaseView {
}
}
private
func
makeBackButton
()
{
private
func
makeBackButton
()
{
backBtn
.
setImage
(
GDShowRoomBundle
.
imageNamed
(
"base_navigation_bar_back_icon_white"
)
,
for
:
.
normal
)
backBtn
.
setImage
(
UIImage
.
whiteNavBack
,
for
:
.
normal
)
bgView
.
addSubview
(
backBtn
)
bgView
.
addSubview
(
backBtn
)
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/PKRecord/GDPKRecordView.swift
View file @
f547837b
...
@@ -94,7 +94,7 @@ class GDPKRecordView: BaseView {
...
@@ -94,7 +94,7 @@ class GDPKRecordView: BaseView {
}
}
private
func
makeBackButton
()
{
private
func
makeBackButton
()
{
backBtn
.
setImage
(
GDShowRoomBundle
.
imageNamed
(
"base_navigation_bar_back_icon_white"
)
,
for
:
.
normal
)
backBtn
.
setImage
(
UIImage
.
whiteNavBack
,
for
:
.
normal
)
bgView
.
addSubview
(
backBtn
)
bgView
.
addSubview
(
backBtn
)
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/RandomMatch/GDPKRandomMatchView.swift
View file @
f547837b
...
@@ -83,7 +83,7 @@ class GDPKRandomMatchView: BaseView {
...
@@ -83,7 +83,7 @@ class GDPKRandomMatchView: BaseView {
}
}
private
func
makeBackButton
()
{
private
func
makeBackButton
()
{
backBtn
.
setImage
(
GDShowRoomBundle
.
imageNamed
(
"base_navigation_bar_back_icon_white"
)
,
for
:
.
normal
)
backBtn
.
setImage
(
UIImage
.
whiteNavBack
,
for
:
.
normal
)
bgView
.
addSubview
(
backBtn
)
bgView
.
addSubview
(
backBtn
)
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/RuleView/GDPKPanelRuleView.swift
View file @
f547837b
...
@@ -78,7 +78,7 @@ class GDPKPanelRuleView: BaseView {
...
@@ -78,7 +78,7 @@ class GDPKPanelRuleView: BaseView {
}
}
private
func
makeBackButton
()
{
private
func
makeBackButton
()
{
backBtn
.
setImage
(
GDShowRoomBundle
.
imageNamed
(
"base_navigation_bar_back_icon_white"
)
,
for
:
.
normal
)
backBtn
.
setImage
(
UIImage
.
whiteNavBack
,
for
:
.
normal
)
bgView
.
addSubview
(
backBtn
)
bgView
.
addSubview
(
backBtn
)
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
...
...
Module/GDShowRoomModule/GDShowRoomModule/Features/PK/View/PanelView/View/Setting/GDPKPanelSettingView.swift
View file @
f547837b
...
@@ -84,7 +84,7 @@ class GDPKPanelSettingView: BaseView {
...
@@ -84,7 +84,7 @@ class GDPKPanelSettingView: BaseView {
}
}
private
func
makeBackButton
()
{
private
func
makeBackButton
()
{
backBtn
.
setImage
(
GDShowRoomBundle
.
imageNamed
(
"base_navigation_bar_back_icon_white"
)
,
for
:
.
normal
)
backBtn
.
setImage
(
UIImage
.
whiteNavBack
,
for
:
.
normal
)
bgView
.
addSubview
(
backBtn
)
bgView
.
addSubview
(
backBtn
)
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
backBtn
.
snp
.
makeConstraints
{
(
make
)
in
...
...
Module/GDTeenagerModule/GDTeenagerModule/Features/TeenagerMode/TeenagerPlayView/GDTeenagerPlayController.swift
View file @
f547837b
...
@@ -169,8 +169,9 @@ class GDTeenagerPlayController: BaseViewController {
...
@@ -169,8 +169,9 @@ class GDTeenagerPlayController: BaseViewController {
self
.
loadingView
.
isHidden
=
false
self
.
loadingView
.
isHidden
=
false
self
.
loadingView
.
startAnimating
()
self
.
loadingView
.
startAnimating
()
// 开启播放
// 开启播放
self
.
streamPlayView
.
videoUrl
=
streamUrl
self
.
streamPlayView
.
resetEngine
()
self
.
streamPlayView
.
resetEngine
()
self
.
streamPlayView
.
videoUrl
=
streamUrl
self
.
streamPlayView
.
prepareToPlay
()
self
.
streamPlayView
.
play
()
self
.
streamPlayView
.
play
()
self
.
streamPlayView
.
state
.
distinctUntilChanged
()
.
subscribe
(
onNext
:
{[
weak
self
]
state
in
self
.
streamPlayView
.
state
.
distinctUntilChanged
()
.
subscribe
(
onNext
:
{[
weak
self
]
state
in
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment