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
9d7d3720
Commit
9d7d3720
authored
Jan 18, 2024
by
David黄金龙
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
处理 首页 UI
parent
7c0264d2
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
183 additions
and
31 deletions
+183
-31
ContentBaseViewController.swift
...lasses/Modules/Home(首页)/C/ContentBaseViewController.swift
+34
-2
YHDavidTestViewController.swift
...lasses/Modules/Home(首页)/C/YHDavidTestViewController.swift
+33
-6
YHHomeViewController.swift
...axy/Classes/Modules/Home(首页)/C/YHHomeViewController.swift
+82
-14
YHDavidCell3.swift
galaxy/galaxy/Classes/Modules/Home(首页)/V/YHDavidCell3.swift
+25
-0
YHGestureTableView.swift
...alaxy/Classes/Modules/Home(首页)/V/YHGestureTableView.swift
+9
-9
No files found.
galaxy/galaxy/Classes/Modules/Home(首页)/C/ContentBaseViewController.swift
View file @
9d7d3720
...
...
@@ -19,6 +19,9 @@ class ContentBaseViewController: UIViewController {
}
}
weak
var
myParentVC
:
YHHomeViewController
?
let
arrItemTitles
=
[
"推荐"
,
"子女教育"
,
"税务规划"
,
"民生医疗"
,
"成功案例"
,
"我的服务"
,
"行业资讯"
,
"香港生活"
,
"你我他"
,
"我是很长的tag呀"
]
var
arrItemVCs
:
[
YHDavidTestViewController
]
=
[]
...
...
@@ -43,14 +46,21 @@ class ContentBaseViewController: UIViewController {
//分类title 所对应的VC
lazy
var
listContainerView
:
JXSegmentedListContainerView
!
=
{
return
JXSegmentedListContainerView
(
dataSource
:
self
,
type
:
.
collectionView
)
return
JXSegmentedListContainerView
(
dataSource
:
self
)
}()
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
listContainerView
.
backgroundColor
=
.
purple
//for test hjl
listContainerView
.
scrollView
.
backgroundColor
=
.
red
//for test hjl
for
_
in
arrItemTitles
{
arrItemVCs
.
append
(
YHDavidTestViewController
())
let
vc
=
YHDavidTestViewController
()
vc
.
myParentVc
=
self
arrItemVCs
.
append
(
vc
)
}
//segmentedViewDataSource一定要通过属性强持有!!!!!!!!!
...
...
@@ -100,6 +110,28 @@ class ContentBaseViewController: UIViewController {
extension
ContentBaseViewController
:
JXSegmentedViewDelegate
{
func
segmentedView
(
_
segmentedView
:
JXSegmentedView
,
didSelectedItemAt
index
:
Int
)
{
navigationController
?
.
interactivePopGestureRecognizer
?
.
isEnabled
=
(
segmentedView
.
selectedIndex
==
0
)
// self.myParentVC?.tableViewCanScrollFlag = true
}
func
segmentedView
(
_
segmentedView
:
JXSegmentedView
,
didScrollSelectedItemAt
index
:
Int
)
{
printLog
(
"hjl- didScrollSelectedItemAt "
)
// self.myParentVC?.tableViewCanScrollFlag = true
}
/// 正在滚动中的回调
///
/// - Parameters:
/// - segmentedView: JXSegmentedView
/// - leftIndex: 正在滚动中,相对位置处于左边的index
/// - rightIndex: 正在滚动中,相对位置处于右边的index
/// - percent: 从左往右计算的百分比
func
segmentedView
(
_
segmentedView
:
JXSegmentedView
,
scrollingFrom
leftIndex
:
Int
,
to
rightIndex
:
Int
,
percent
:
CGFloat
)
{
printLog
(
"hjl- scrollingFrom [
\(
percent
)
] leftIndex=
\(
leftIndex
)
rightIndex=
\(
rightIndex
)
"
)
// self.myParentVC?.tableViewCanScrollFlag = false
}
}
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHDavidTestViewController.swift
View file @
9d7d3720
...
...
@@ -13,6 +13,7 @@ import GKNavigationBarSwift
class
YHDavidTestViewController
:
YHBaseViewController
{
var
vcCanScroll
:
Bool
=
true
weak
var
myParentVc
:
ContentBaseViewController
?
lazy
var
descripeLable
:
UILabel
=
{
let
label
=
UILabel
()
...
...
@@ -109,6 +110,15 @@ class YHDavidTestViewController: YHBaseViewController {
gk_navigationBar
.
isHidden
=
true
self
.
items
=
[
AboutAdvantageItem
(
iconName
:
"about_match"
,
title
:
"精准匹配"
,
detail
:
"大数据精准匹配,专属方案获批率更高"
),
AboutAdvantageItem
(
iconName
:
"about_match"
,
title
:
"精准匹配"
,
detail
:
"大数据精准匹配,专属方案获批率更高"
),
AboutAdvantageItem
(
iconName
:
"about_match"
,
title
:
"精准匹配"
,
detail
:
"大数据精准匹配,专属方案获批率更高"
),
AboutAdvantageItem
(
iconName
:
"about_match"
,
title
:
"精准匹配"
,
detail
:
"大数据精准匹配,专属方案获批率更高"
),
AboutAdvantageItem
(
iconName
:
"about_match"
,
title
:
"精准匹配"
,
detail
:
"大数据精准匹配,专属方案获批率更高"
)]
// self.myCollectView.es.stopPullToRefresh(ignoreDate: true,ignoreFooter: false)
self
.
myCollectView
.
reloadData
()
}
}
...
...
@@ -218,10 +228,10 @@ extension YHDavidTestViewController {
// self.myCollectView.backgroundColor = UIColor.green
self
.
myCollectView
.
es
.
addPullToRefresh
{
self
.
loadFirstItem
()
}
self
.
myCollectView
.
es
.
startPullToRefresh
()
//
self.myCollectView.es.addPullToRefresh {
//
self.loadFirstItem()
//
}
//
self.myCollectView.es.startPullToRefresh()
self
.
myCollectView
.
es
.
addInfiniteScrolling
{
self
.
loadFakeData
()
}
...
...
@@ -263,11 +273,13 @@ extension YHDavidTestViewController: UIScrollViewDelegate {
func
scrollViewDidScroll
(
_
scrollView
:
UIScrollView
)
{
if
scrollView
===
myCollectView
{
let
scrollViewSet
:
CGFloat
=
scrollView
.
contentOffset
.
y
printLog
(
"subTableView --- scrollView.contentOffset.y =
\(
scrollViewSet
)
scrollView.contentOffset.x =
\(
scrollView
.
contentOffset
.
y
)
"
)
//
printLog("subTableView --- scrollView.contentOffset.y = \(scrollViewSet) scrollView.contentOffset.x = \(scrollView.contentOffset.y)")
if
vcCanScroll
==
false
{
//不能滚动时
scrollView
.
contentOffset
=
CGPoint
(
x
:
-
20
,
y
:
0
)
printLog
(
"vcCanScroll == false"
)
// printLog("vcCanScroll == false")
// self.myParentVc?.listContainerView.scrollView.isScrollEnabled = true
}
else
{
if
(
scrollViewSet
<=
0
)
{
scrollView
.
contentOffset
=
CGPoint
(
x
:
-
20
,
y
:
0
)
...
...
@@ -279,4 +291,19 @@ extension YHDavidTestViewController: UIScrollViewDelegate {
}
}
}
func
scrollViewWillBeginDragging
(
_
scrollView
:
UIScrollView
)
{
if
scrollView
===
myCollectView
{
// printLog("hjl*****开始滚动")
}
}
func
scrollViewDidEndDragging
(
_
scrollView
:
UIScrollView
,
willDecelerate
decelerate
:
Bool
)
{
if
scrollView
===
myCollectView
{
self
.
myParentVc
?
.
listContainerView
.
scrollView
.
isScrollEnabled
=
true
// printLog("hjl*****停止滚动")
}
}
}
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHHomeViewController.swift
View file @
9d7d3720
...
...
@@ -17,6 +17,8 @@ class YHHomeViewController: YHBaseViewController {
var
arrItemVc
:
[
UIViewController
]
=
[]
var
canScroll
:
Bool
=
true
var
myCellHeight
:
CGFloat
{
get
{
return
view
.
bounds
.
size
.
height
-
homeNavBarView
.
height
-
k_TabBar_Height
-
k_Height_NavigationtBarAndStatuBar
-
cellHeight
*
2
...
...
@@ -126,6 +128,13 @@ class YHHomeViewController: YHBaseViewController {
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
leaveTopOp
)
,
name
:
Notification
.
Name
(
rawValue
:
"leaveTop"
),
object
:
nil
)
// NotificationCenter.default.addObserver(self, selector: #selector(beginDragging), name:Notification.Name(rawValue: "scrollViewWillBeginDragging"), object: nil)
//
//
// NotificationCenter.default.addObserver(self, selector: #selector(endDragging), name:Notification.Name(rawValue: "scrollViewDidEndDragging"), object: nil)
// cellView.myParentVC = self
//1.UI
initView
()
...
...
@@ -143,9 +152,27 @@ class YHHomeViewController: YHBaseViewController {
extension
YHHomeViewController
{
@objc
func
leaveTopOp
()
{
print
(
"leaveTopOp"
)
canScroll
=
true
}
@objc
func
beginDragging
()
{
print
(
"beginDragging"
)
homeTableView
.
isScrollEnabled
=
false
canScroll
=
false
cellView
.
canScroll
=
false
}
@objc
func
endDragging
()
{
print
(
"endDragging"
)
homeTableView
.
isScrollEnabled
=
true
canScroll
=
true
cellView
.
canScroll
=
true
}
private
func
requestData
()
{
self
.
homeReqVM
.
getHomeConfig
{
flag
,
error
in
if
flag
==
true
{
...
...
@@ -327,24 +354,65 @@ extension YHHomeViewController : UITableViewDelegate,UITableViewDataSource {
extension
YHHomeViewController
:
UIScrollViewDelegate
{
func
scrollViewWillBeginDragging
(
_
scrollView
:
UIScrollView
)
{
print
(
"main - scrollViewWillBeginDragging"
)
}
func
scrollViewDidEndDecelerating
(
_
scrollView
:
UIScrollView
)
{
print
(
"main - scrollViewDidEndDecelerating"
)
}
func
scrollViewDidScroll
(
_
scrollView
:
UIScrollView
)
{
let
bottomCellOffset
:
CGFloat
=
homeTableView
.
rect
(
forSection
:
1
)
.
origin
.
y
-
64
+
80
-
12
printLog
(
"Main scrollView.contentOffset.y =
\(
scrollView
.
contentOffset
.
y
)
bottomCellOffset=
\(
bottomCellOffset
)
"
)
if
(
scrollView
.
contentOffset
.
y
>=
bottomCellOffset
)
{
scrollView
.
contentOffset
=
CGPointMake
(
0
,
bottomCellOffset
)
if
canScroll
==
true
{
canScroll
=
false
//传递参数到 子VC
cellView
.
canScroll
=
true
}
}
else
{
if
canScroll
==
false
{
scrollView
.
contentOffset
=
CGPoint
(
x
:
0
,
y
:
bottomCellOffset
)
if
scrollView
===
homeTableView
{
let
bottomCellOffset
:
CGFloat
=
homeTableView
.
rect
(
forSection
:
1
)
.
origin
.
y
-
64
+
80
-
12
//48
printLog
(
"Main scrollView.contentOffset.y =
\(
scrollView
.
contentOffset
.
y
)
bottomCellOffset=
\(
bottomCellOffset
)
"
)
if
(
scrollView
.
contentOffset
.
y
>=
bottomCellOffset
)
{
scrollView
.
contentOffset
=
CGPointMake
(
0
,
bottomCellOffset
)
if
canScroll
==
true
{
canScroll
=
false
//传递参数到 子VC
cellView
.
canScroll
=
true
}
}
else
{
if
canScroll
==
false
{
scrollView
.
contentOffset
=
CGPoint
(
x
:
0
,
y
:
bottomCellOffset
)
}
}
self
.
homeTableView
.
showsVerticalScrollIndicator
=
canScroll
?
true
:
false
}
self
.
homeTableView
.
showsVerticalScrollIndicator
=
canScroll
?
true
:
false
}
// func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
//// cellView.segmentedView.selectItemAt(index: 2)
////
//// DispatchQueue.main.asyncAfter(wallDeadline: .now() + 0.25) { [weak self] in
//// self?.cellView.listContainerView.scrollView.isScrollEnabled = false
//// }
//
// cellView.listContainerView.scrollView.isScrollEnabled = false
// }
//
// func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
// cellView.listContainerView.scrollView.isScrollEnabled = true
// }
}
//extension JXSegmentedListContainerView : UIScrollViewDelegate {
// public func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
// print("kkkkkkkkk")
// }
//
// public func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
// print("jjjjjjj")
// }
//}
galaxy/galaxy/Classes/Modules/Home(首页)/V/YHDavidCell3.swift
View file @
9d7d3720
...
...
@@ -56,5 +56,30 @@ class YHDavidCell3: UITableViewCell {
make
.
top
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
138
)
}
let
bbxLable
=
UILabel
()
bbxLable
.
text
=
"银河推荐官"
bbxLable
.
textColor
=
UIColor
(
red
:
0.2
,
green
:
0.2
,
blue
:
0.2
,
alpha
:
1
)
bbxLable
.
font
=
kFont
(
size
:
18
)
subContentView
.
addSubview
(
bbxLable
)
bbxLable
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
13
)
make
.
left
.
equalTo
(
25
)
}
let
desLable
=
UILabel
()
desLable
.
text
=
"邀请拉新,合作共赢"
desLable
.
frame
=
CGRect
(
x
:
0
,
y
:
0
,
width
:
141.5
,
height
:
11.5
)
desLable
.
textColor
=
UIColor
(
red
:
0.592
,
green
:
0.592
,
blue
:
0.592
,
alpha
:
1
)
desLable
.
font
=
kFont
(
size
:
10
)
subContentView
.
addSubview
(
desLable
)
desLable
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
bbxLable
.
snp
.
right
)
.
offset
(
11
)
make
.
centerY
.
equalTo
(
bbxLable
)
}
}
}
galaxy/galaxy/Classes/Modules/Home(首页)/V/YHGestureTableView.swift
View file @
9d7d3720
...
...
@@ -19,9 +19,9 @@ extension YHGestureTableView: UIGestureRecognizerDelegate {
return
true
}
open
override
func
gestureRecognizerShouldBegin
(
_
gestureRecognizer
:
UIGestureRecognizer
)
->
Bool
{
return
true
}
//
open override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
//
return true
//
}
}
...
...
@@ -39,9 +39,9 @@ extension YHGestureScrollView: UIGestureRecognizerDelegate {
return
true
}
open
override
func
gestureRecognizerShouldBegin
(
_
gestureRecognizer
:
UIGestureRecognizer
)
->
Bool
{
return
true
}
//
open override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
//
return true
//
}
}
...
...
@@ -58,8 +58,8 @@ extension YHGestureCollectionView: UIGestureRecognizerDelegate {
return
true
}
open
override
func
gestureRecognizerShouldBegin
(
_
gestureRecognizer
:
UIGestureRecognizer
)
->
Bool
{
return
true
}
//
open override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
//
return true
//
}
}
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