Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
galaxy-iOS
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mobile-group
galaxy-iOS
Commits
e36b255a
Commit
e36b255a
authored
Feb 24, 2025
by
Steven杜宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
// vip
parent
47424308
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
214 additions
and
3 deletions
+214
-3
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+4
-0
YHVipLevelRightViewController.swift
...es/Modules/Mine(我的)/C/YHVipLevelRightViewController.swift
+23
-3
YHVipLevelRightHeaderView.swift
...lasses/Modules/Mine(我的)/V/YHVipLevelRightHeaderView.swift
+165
-0
20pt@2x.png
...s/Assets.xcassets/Mine/mine_vip_lock.imageset/20pt@2x.png
+0
-0
20pt@3x.png
...s/Assets.xcassets/Mine/mine_vip_lock.imageset/20pt@3x.png
+0
-0
Contents.json
...Assets.xcassets/Mine/mine_vip_lock.imageset/Contents.json
+22
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
e36b255a
...
@@ -1210,6 +1210,7 @@
...
@@ -1210,6 +1210,7 @@
04AFEF532D6C62220007A011
/* YHVipLevelRightInfoModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF522D6C62210007A011
/* YHVipLevelRightInfoModel.swift */
;
};
04AFEF532D6C62220007A011
/* YHVipLevelRightInfoModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF522D6C62210007A011
/* YHVipLevelRightInfoModel.swift */
;
};
04AFEF552D6C71430007A011
/* YHVipLevelRightTitleCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
;
};
04AFEF552D6C71430007A011
/* YHVipLevelRightTitleCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
;
};
04AFEF572D6C78AA0007A011
/* YHVipLevelRightViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF562D6C78AA0007A011
/* YHVipLevelRightViewController.swift */
;
};
04AFEF572D6C78AA0007A011
/* YHVipLevelRightViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF562D6C78AA0007A011
/* YHVipLevelRightViewController.swift */
;
};
04AFEF592D6C8CE00007A011
/* YHVipLevelRightHeaderView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04AFEF582D6C8CDF0007A011
/* YHVipLevelRightHeaderView.swift */
;
};
04E4CF3E2D5C6D32004D4013
/* YHCountryMessageView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E4CF3D2D5C6D32004D4013
/* YHCountryMessageView.swift */
;
};
04E4CF3E2D5C6D32004D4013
/* YHCountryMessageView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E4CF3D2D5C6D32004D4013
/* YHCountryMessageView.swift */
;
};
04E4CF402D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E4CF3F2D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift */
;
};
04E4CF402D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E4CF3F2D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift */
;
};
04EA376D2BEA06EF00DBAF64
/* WebKit.framework in Frameworks */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04EA376C2BEA06EF00DBAF64
/* WebKit.framework */
;
};
04EA376D2BEA06EF00DBAF64
/* WebKit.framework in Frameworks */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04EA376C2BEA06EF00DBAF64
/* WebKit.framework */
;
};
...
@@ -2458,6 +2459,7 @@
...
@@ -2458,6 +2459,7 @@
04AFEF522D6C62210007A011
/* YHVipLevelRightInfoModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightInfoModel.swift
;
sourceTree
=
"<group>"
;
};
04AFEF522D6C62210007A011
/* YHVipLevelRightInfoModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightInfoModel.swift
;
sourceTree
=
"<group>"
;
};
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightTitleCell.swift
;
sourceTree
=
"<group>"
;
};
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightTitleCell.swift
;
sourceTree
=
"<group>"
;
};
04AFEF562D6C78AA0007A011
/* YHVipLevelRightViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightViewController.swift
;
sourceTree
=
"<group>"
;
};
04AFEF562D6C78AA0007A011
/* YHVipLevelRightViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightViewController.swift
;
sourceTree
=
"<group>"
;
};
04AFEF582D6C8CDF0007A011
/* YHVipLevelRightHeaderView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVipLevelRightHeaderView.swift
;
sourceTree
=
"<group>"
;
};
04E4CF3D2D5C6D32004D4013
/* YHCountryMessageView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCountryMessageView.swift
;
sourceTree
=
"<group>"
;
};
04E4CF3D2D5C6D32004D4013
/* YHCountryMessageView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCountryMessageView.swift
;
sourceTree
=
"<group>"
;
};
04E4CF3F2D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSelectPhoneCountryViewController.swift
;
sourceTree
=
"<group>"
;
};
04E4CF3F2D5C83AE004D4013
/* YHSelectPhoneCountryViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSelectPhoneCountryViewController.swift
;
sourceTree
=
"<group>"
;
};
04EA376C2BEA06EF00DBAF64
/* WebKit.framework */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
wrapper.framework
;
name
=
WebKit.framework
;
path
=
System/Library/Frameworks/WebKit.framework
;
sourceTree
=
SDKROOT
;
};
04EA376C2BEA06EF00DBAF64
/* WebKit.framework */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
wrapper.framework
;
name
=
WebKit.framework
;
path
=
System/Library/Frameworks/WebKit.framework
;
sourceTree
=
SDKROOT
;
};
...
@@ -5831,6 +5833,7 @@
...
@@ -5831,6 +5833,7 @@
0436713E2D64817500E8D9BA
/* YHMemberCenterFooterView.swift */
,
0436713E2D64817500E8D9BA
/* YHMemberCenterFooterView.swift */
,
04AFEF502D6878030007A011
/* YHVipLevelRightInfoCell.swift */
,
04AFEF502D6878030007A011
/* YHVipLevelRightInfoCell.swift */
,
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
,
04AFEF542D6C71430007A011
/* YHVipLevelRightTitleCell.swift */
,
04AFEF582D6C8CDF0007A011
/* YHVipLevelRightHeaderView.swift */
,
);
);
path
=
V
;
path
=
V
;
sourceTree
=
"<group>"
;
sourceTree
=
"<group>"
;
...
@@ -7727,6 +7730,7 @@
...
@@ -7727,6 +7730,7 @@
045C12A42D12CA5F00BD2DC0
/* YHEducationInfoCell.swift in Sources */
,
045C12A42D12CA5F00BD2DC0
/* YHEducationInfoCell.swift in Sources */
,
045C12A52D12CA5F00BD2DC0
/* YHTravelHKDLGuideSheetView.swift in Sources */
,
045C12A52D12CA5F00BD2DC0
/* YHTravelHKDLGuideSheetView.swift in Sources */
,
045C12A62D12CA5F00BD2DC0
/* YHTravelDocsPreparationTipsCell.swift in Sources */
,
045C12A62D12CA5F00BD2DC0
/* YHTravelDocsPreparationTipsCell.swift in Sources */
,
04AFEF592D6C8CE00007A011
/* YHVipLevelRightHeaderView.swift in Sources */
,
045C12A72D12CA5F00BD2DC0
/* YHMainInfoPreviewModel.swift in Sources */
,
045C12A72D12CA5F00BD2DC0
/* YHMainInfoPreviewModel.swift in Sources */
,
045C12A82D12CA5F00BD2DC0
/* YHActivityTravelitemView.swift in Sources */
,
045C12A82D12CA5F00BD2DC0
/* YHActivityTravelitemView.swift in Sources */
,
045C12A92D12CA5F00BD2DC0
/* YHAllApiName.swift in Sources */
,
045C12A92D12CA5F00BD2DC0
/* YHAllApiName.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/C/YHVipLevelRightViewController.swift
View file @
e36b255a
...
@@ -65,30 +65,49 @@ class YHVipLevelRightViewController: YHBaseViewController, UITableViewDataSource
...
@@ -65,30 +65,49 @@ class YHVipLevelRightViewController: YHBaseViewController, UITableViewDataSource
lazy
var
scrollView
:
UIScrollView
=
{
lazy
var
scrollView
:
UIScrollView
=
{
let
v
=
UIScrollView
()
let
v
=
UIScrollView
()
v
.
backgroundColor
=
.
yellow
v
.
backgroundColor
=
.
yellow
v
.
isPagingEnabled
=
true
//
v.isPagingEnabled = true
v
.
bounces
=
false
v
.
bounces
=
false
v
.
contentInsetAdjustmentBehavior
=
.
never
v
.
contentInsetAdjustmentBehavior
=
.
never
v
.
showsHorizontalScrollIndicator
=
false
v
.
showsHorizontalScrollIndicator
=
false
return
v
return
v
}()
}()
lazy
var
titleView
:
YHVipLevelRightHeaderView
=
{
let
v
=
YHVipLevelRightHeaderView
(
frame
:
.
zero
)
v
.
offSetXChange
=
{
[
weak
self
]
offSetX
in
guard
let
self
=
self
else
{
return
}
self
.
tableView2
.
contentOffset
.
x
=
offSetX
}
return
v
}()
override
func
viewDidLoad
()
{
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
super
.
viewDidLoad
()
gk_navTitle
=
"我的等级权益"
.
local
gk_navTitle
=
"我的等级权益"
.
local
view
.
backgroundColor
=
.
white
view
.
backgroundColor
=
.
white
view
.
addSubview
(
titleView
)
view
.
addSubview
(
tableView1
)
view
.
addSubview
(
tableView1
)
view
.
addSubview
(
scrollView
)
view
.
addSubview
(
scrollView
)
scrollView
.
addSubview
(
tableView2
)
scrollView
.
addSubview
(
tableView2
)
titleView
.
snp
.
makeConstraints
{
make
in
make
.
height
.
equalTo
(
48
)
make
.
width
.
equalTo
(
KScreenWidth
/
3.0
*
2.0
)
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
right
.
equalToSuperview
()
}
tableView1
.
snp
.
makeConstraints
{
make
in
tableView1
.
snp
.
makeConstraints
{
make
in
make
.
left
.
bottom
.
equalToSuperview
()
make
.
left
.
bottom
.
equalToSuperview
()
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
top
.
equalTo
(
titleView
.
snp
.
bottom
)
make
.
width
.
equalTo
(
KScreenWidth
/
3.0
)
make
.
width
.
equalTo
(
KScreenWidth
/
3.0
)
}
}
scrollView
.
snp
.
makeConstraints
{
make
in
scrollView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
top
.
equalTo
(
titleView
.
snp
.
bottom
)
make
.
left
.
equalTo
(
tableView1
.
snp
.
right
)
make
.
left
.
equalTo
(
tableView1
.
snp
.
right
)
make
.
right
.
bottom
.
equalToSuperview
()
make
.
right
.
bottom
.
equalToSuperview
()
}
}
...
@@ -184,6 +203,7 @@ extension YHVipLevelRightViewController: UIScrollViewDelegate {
...
@@ -184,6 +203,7 @@ extension YHVipLevelRightViewController: UIScrollViewDelegate {
}
else
if
scrollView
.
tag
==
valueListTag
{
}
else
if
scrollView
.
tag
==
valueListTag
{
tableView1
.
contentOffset
.
y
=
scrollView
.
contentOffset
.
y
tableView1
.
contentOffset
.
y
=
scrollView
.
contentOffset
.
y
titleView
.
scrollView
.
contentOffset
.
x
=
scrollView
.
contentOffset
.
x
}
}
}
}
}
}
galaxy/galaxy/Classes/Modules/Mine(我的)/V/YHVipLevelRightHeaderView.swift
0 → 100644
View file @
e36b255a
//
// YHVipLevelRightHeaderView.swift
// galaxy
//
// Created by Dufet on 2025/2/24.
// Copyright © 2025 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHVipLevelRightsModel
{
var
type
:
YHUserVipLevel
=
.
none
var
title
:
String
=
""
var
num
:
Int
=
0
var
isLock
:
Bool
=
false
init
(
type
:
YHUserVipLevel
,
title
:
String
,
num
:
Int
,
isLock
:
Bool
)
{
self
.
type
=
type
self
.
title
=
title
self
.
num
=
num
self
.
isLock
=
isLock
}
}
class
YHVipLevelRightHeaderView
:
UIView
,
UIScrollViewDelegate
{
var
arr
:[
YHVipLevelRightsModel
]
=
[
YHVipLevelRightsModel
(
type
:
.
none
,
title
:
"大众会员"
,
num
:
5
,
isLock
:
false
),
YHVipLevelRightsModel
(
type
:
.
gold
,
title
:
"黄金会员"
,
num
:
7
,
isLock
:
true
),
YHVipLevelRightsModel
(
type
:
.
platinum
,
title
:
"铂金会员"
,
num
:
8
,
isLock
:
true
),
YHVipLevelRightsModel
(
type
:
.
diamond
,
title
:
"钻石会员"
,
num
:
13
,
isLock
:
true
),
]
var
offSetXChange
:((
CGFloat
)
->
())?
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
createUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
lazy
var
scrollView
:
UIScrollView
=
{
let
v
=
UIScrollView
()
v
.
backgroundColor
=
.
yellow
// v.isPagingEnabled = true
v
.
bounces
=
false
v
.
contentInsetAdjustmentBehavior
=
.
never
v
.
showsHorizontalScrollIndicator
=
false
v
.
delegate
=
self
return
v
}()
func
createUI
()
{
self
.
addSubview
(
scrollView
)
scrollView
.
snp
.
makeConstraints
{
make
in
make
.
edges
.
equalToSuperview
()
}
let
colorArr
:[
UIColor
]
=
[
.
init
(
hex
:
0x979EAF
),
.
init
(
hex
:
0xEFAF54
),
.
init
(
hex
:
0x8183AB
),
.
init
(
hex
:
0x15266B
),]
var
lastView
:
UIView
?
=
nil
for
(
index
,
item
)
in
arr
.
enumerated
()
{
let
v1
=
UIView
()
v1
.
backgroundColor
=
colorArr
[
index
]
scrollView
.
addSubview
(
v1
)
v1
.
snp
.
makeConstraints
{
make
in
make
.
top
.
bottom
.
equalToSuperview
()
make
.
width
.
equalTo
(
self
.
snp
.
width
)
.
offset
(
0.5
)
if
let
lastV
=
lastView
{
make
.
left
.
equalTo
(
lastV
.
snp
.
right
)
}
else
{
make
.
left
.
equalToSuperview
()
}
if
index
==
arr
.
count
-
1
{
make
.
right
.
equalToSuperview
()
}
}
let
item1V
=
YHVipLevelRightHeaderItemView
(
frame
:
.
zero
)
item1V
.
titleLabel
.
text
=
item
.
title
item1V
.
numLabel
.
text
=
"
\(
item
.
num
)
项"
v1
.
addSubview
(
item1V
)
item1V
.
snp
.
makeConstraints
{
make
in
make
.
centerY
.
equalToSuperview
()
make
.
centerX
.
equalToSuperview
()
make
.
height
.
equalTo
(
56
)
}
}
}
func
scrollViewDidScroll
(
_
scrollView
:
UIScrollView
)
{
offSetXChange
?(
scrollView
.
contentOffset
.
x
)
}
}
class
YHVipLevelRightHeaderItemView
:
UIView
{
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
""
label
.
textColor
=
.
white
label
.
textAlignment
=
.
center
label
.
font
=
.
PFSC_M
(
ofSize
:
14
)
return
label
}()
lazy
var
numLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
""
label
.
textColor
=
.
init
(
hex
:
0xFFFFFF
,
alpha
:
0.6
)
label
.
textAlignment
=
.
center
label
.
font
=
.
PFSC_R
(
ofSize
:
14
)
return
label
}()
lazy
var
lockImgV
:
UIImageView
=
{
let
v
=
UIImageView
(
image
:
UIImage
(
named
:
"mine_vip_lock"
))
return
v
}()
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
createUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
func
createUI
()
{
self
.
addSubview
(
titleLabel
)
self
.
addSubview
(
numLabel
)
self
.
addSubview
(
lockImgV
)
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
make
.
centerY
.
equalToSuperview
()
make
.
width
.
equalTo
(
57
)
}
lockImgV
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
titleLabel
.
snp
.
right
)
.
offset
(
2
)
make
.
centerY
.
equalToSuperview
()
make
.
width
.
height
.
equalTo
(
16
)
}
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
lockImgV
.
snp
.
right
)
.
offset
(
2
)
make
.
right
.
equalToSuperview
()
make
.
centerY
.
equalToSuperview
()
}
}
}
galaxy/galaxy/Res/Assets.xcassets/Mine/mine_vip_lock.imageset/20pt@2x.png
0 → 100644
View file @
e36b255a
397 Bytes
galaxy/galaxy/Res/Assets.xcassets/Mine/mine_vip_lock.imageset/20pt@3x.png
0 → 100644
View file @
e36b255a
518 Bytes
galaxy/galaxy/Res/Assets.xcassets/Mine/mine_vip_lock.imageset/Contents.json
0 → 100644
View file @
e36b255a
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"20pt@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"20pt@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
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