Commit 1e2f37ef authored by Steven杜宇's avatar Steven杜宇

// 资讯身份无数据优化

parent 909ba335
...@@ -37,6 +37,7 @@ xcuserdata/ ...@@ -37,6 +37,7 @@ xcuserdata/
*.ipa *.ipa
*.dSYM.zip *.dSYM.zip
*.dSYM *.dSYM
*.zip
## Playgrounds ## Playgrounds
timeline.xctimeline timeline.xctimeline
......
...@@ -43,6 +43,14 @@ class YHHomeIdentityViewController: YHBaseViewController { ...@@ -43,6 +43,14 @@ class YHHomeIdentityViewController: YHBaseViewController {
return view return view
}() }()
lazy var noDataView: YHEmptyDataView = {
let view = YHEmptyDataView.createView("暂无内容", kEmptyCommonBgName)
view.backgroundColor = .white
view.topMargin = 150
view.isHidden = true
return view
}()
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
createUI() createUI()
...@@ -55,6 +63,8 @@ class YHHomeIdentityViewController: YHBaseViewController { ...@@ -55,6 +63,8 @@ class YHHomeIdentityViewController: YHBaseViewController {
self.view.addSubview(self.scrollView) self.view.addSubview(self.scrollView)
self.view.addSubview(self.subTabBar) self.view.addSubview(self.subTabBar)
self.view.addSubview(self.noDataView)
self.subTabBar.snp.makeConstraints { make in self.subTabBar.snp.makeConstraints { make in
make.top.equalToSuperview() make.top.equalToSuperview()
make.left.equalTo(20) make.left.equalTo(20)
...@@ -65,6 +75,10 @@ class YHHomeIdentityViewController: YHBaseViewController { ...@@ -65,6 +75,10 @@ class YHHomeIdentityViewController: YHBaseViewController {
make.top.equalTo(self.subTabBar.snp.bottom) make.top.equalTo(self.subTabBar.snp.bottom)
make.left.right.bottom.equalToSuperview() make.left.right.bottom.equalToSuperview()
} }
self.noDataView.snp.makeConstraints { make in
make.left.right.top.bottom.equalToSuperview()
}
} }
override func viewWillDisappear(_ animated: Bool) { override func viewWillDisappear(_ animated: Bool) {
...@@ -94,6 +108,11 @@ extension YHHomeIdentityViewController { ...@@ -94,6 +108,11 @@ extension YHHomeIdentityViewController {
[weak self] success, error in [weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
if !success {
self.view.bringSubviewToFront(self.noDataView)
self.noDataView.isHidden = false
}
subTabArr.removeAll() subTabArr.removeAll()
for item in self.viewModel.categoryArr { for item in self.viewModel.categoryArr {
if let item = item { if let item = item {
......
...@@ -33,28 +33,61 @@ class YHHomeInformationViewController: YHBaseViewController { ...@@ -33,28 +33,61 @@ class YHHomeInformationViewController: YHBaseViewController {
collectinoView.alwaysBounceVertical = true collectinoView.alwaysBounceVertical = true
collectinoView.showsVerticalScrollIndicator = false collectinoView.showsVerticalScrollIndicator = false
collectinoView.es.addYHPullToRefresh { collectinoView.es.addYHPullToRefresh {
self.getClassifies() self.requetData()
self.getTheNewestInfoList(isFirstPage: true)
} }
collectinoView.es.addInfiniteScrolling { collectinoView.es.addInfiniteScrolling {
self.getTheNewestInfoList(isFirstPage: false) self.getTheNewestInfoList(isFirstPage: false, completion: nil)
} }
return collectinoView return collectinoView
}() }()
lazy var noDataView: YHEmptyDataView = {
let view = YHEmptyDataView.createView("暂无内容", kEmptyCommonBgName)
view.backgroundColor = .white
view.topMargin = 150
view.isHidden = true
return view
}()
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
gk_navigationBar.isHidden = true gk_navigationBar.isHidden = true
self.view.backgroundColor = .white self.view.backgroundColor = .white
self.view.addSubview(self.collectView) self.view.addSubview(self.collectView)
self.view.addSubview(self.noDataView)
self.collectView.snp.makeConstraints { make in self.collectView.snp.makeConstraints { make in
make.top.equalTo(10) make.top.equalTo(10)
make.bottom.equalToSuperview() make.bottom.equalToSuperview()
make.left.equalTo(20) make.left.equalTo(20)
make.right.equalTo(-20) make.right.equalTo(-20)
} }
self.getClassifies() self.noDataView.snp.makeConstraints { make in
self.getTheNewestInfoList(isFirstPage:true) make.left.right.top.bottom.equalToSuperview()
}
requetData()
}
func requetData() {
let ossGroup = DispatchGroup()
ossGroup.enter()
self.getClassifies {
ossGroup.leave()
}
ossGroup.enter()
self.getTheNewestInfoList(isFirstPage: true) {
ossGroup.leave()
}
ossGroup.notify(queue: .main) {
let count = self.viewModel.arrHomeNewsData?.count ?? 0
if count <= 0, self.sectionItems.count <= 0 {
self.noDataView.isHidden = true
} else {
self.noDataView.isHidden = false
}
}
} }
} }
...@@ -145,15 +178,16 @@ extension YHHomeInformationViewController: JXSegmentedListContainerViewListDeleg ...@@ -145,15 +178,16 @@ extension YHHomeInformationViewController: JXSegmentedListContainerViewListDeleg
extension YHHomeInformationViewController { extension YHHomeInformationViewController {
// 获取栏目 // 获取栏目
func getClassifies() { func getClassifies(_ completion: (()->())?) {
self.viewModel.getHomeInfoClassifies { success, error in self.viewModel.getHomeInfoClassifies { success, error in
self.sectionItems.removeAll() self.sectionItems.removeAll()
self.sectionItems.append(contentsOf: self.viewModel.classifyArr) self.sectionItems.append(contentsOf: self.viewModel.classifyArr)
self.collectView.reloadData() self.collectView.reloadData()
completion?()
} }
} }
// 获取最新资讯 // 获取最新资讯
func getTheNewestInfoList(isFirstPage: Bool) { func getTheNewestInfoList(isFirstPage: Bool, completion: (()->())?) {
self.viewModel.getList(isFirsPage: isFirstPage) { success, error in self.viewModel.getList(isFirsPage: isFirstPage) { success, error in
self.collectView.reloadData() self.collectView.reloadData()
self.collectView.es.stopPullToRefresh() self.collectView.es.stopPullToRefresh()
...@@ -162,6 +196,7 @@ extension YHHomeInformationViewController { ...@@ -162,6 +196,7 @@ extension YHHomeInformationViewController {
self.collectView.es.noticeNoMoreData() self.collectView.es.noticeNoMoreData()
self.collectView.footer?.alpha = 1 self.collectView.footer?.alpha = 1
} }
completion?()
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment