Commit 70173896 authored by David黄金龙's avatar David黄金龙

修改首页 抖动的问题

parent 6d69d267
...@@ -57,7 +57,6 @@ class YHHomePageViewController: YHBaseViewController { ...@@ -57,7 +57,6 @@ class YHHomePageViewController: YHBaseViewController {
var tapTimestamp : CFAbsoluteTime = -10.0 var tapTimestamp : CFAbsoluteTime = -10.0
} }
private extension YHHomePageViewController { private extension YHHomePageViewController {
...@@ -68,24 +67,31 @@ private extension YHHomePageViewController { ...@@ -68,24 +67,31 @@ private extension YHHomePageViewController {
func getData() { func getData() {
self.homeHeaderView.homeBannerView.dataArr = [YHBannerModel.localDefaultItem()] self.homeHeaderView.homeBannerView.dataArr = [YHBannerModel.localDefaultItem()]
loadFirstData() DispatchQueue.global().async {
self.loadFirstData()
viewModel.getHomeBanner(0) {[weak self] success, error in self.viewModel.getHomeBanner(0) {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
DispatchQueue.main.async {
self.homeHeaderView.homeBannerView.dataArr = self.viewModel.banners ?? [YHBannerModel.localDefaultItem()] self.homeHeaderView.homeBannerView.dataArr = self.viewModel.banners ?? [YHBannerModel.localDefaultItem()]
} }
} }
}
}
func loadMoreData() { func loadMoreData() {
viewModel.getHomeNewsList(firstPageFlag : false) {[weak self] success, error in viewModel.getHomeNewsList(firstPageFlag : false) {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
homeCollectView.es.stopLoadingMore() DispatchQueue.main.asyncAfter(wallDeadline: .now() + 0.35, execute: {
CATransaction.setDisableActions(true)
self.homeCollectView.reloadData()
CATransaction.commit()
self.homeCollectView.es.stopLoadingMore()
if self.viewModel.hasMoreForHomeNews == false { if self.viewModel.hasMoreForHomeNews == false {
homeCollectView.es.noticeNoMoreData() self.homeCollectView.es.noticeNoMoreData()
} }
self.homeCollectView.reloadItems(at: [IndexPath(index: 0)]) })
} }
} }
...@@ -97,7 +103,14 @@ private extension YHHomePageViewController { ...@@ -97,7 +103,14 @@ private extension YHHomePageViewController {
if self.viewModel.hasMoreForHomeNews == false { if self.viewModel.hasMoreForHomeNews == false {
homeCollectView.es.noticeNoMoreData() homeCollectView.es.noticeNoMoreData()
} }
self.homeCollectView.reloadItems(at: [IndexPath(index: 0)])
DispatchQueue.main.async {
CATransaction.setDisableActions(true)
self.homeCollectView.reloadData()
CATransaction.commit()
}
} }
} }
...@@ -136,6 +149,8 @@ private extension YHHomePageViewController { ...@@ -136,6 +149,8 @@ private extension YHHomePageViewController {
r.origin.y = r.origin.y - YHHomeHeadView.viewH r.origin.y = r.origin.y - YHHomeHeadView.viewH
tmpHeadView.frame = r tmpHeadView.frame = r
homeCollectView.showsHorizontalScrollIndicator = false
homeCollectView.showsVerticalScrollIndicator = false
homeCollectView.es.addInfiniteScrolling { homeCollectView.es.addInfiniteScrolling {
self.loadMoreData() self.loadMoreData()
} }
......
...@@ -27,6 +27,7 @@ class YHHomeBannerCollectionViewCell: FSPagerViewCell { ...@@ -27,6 +27,7 @@ class YHHomeBannerCollectionViewCell: FSPagerViewCell {
let imagV : UIImageView = UIImageView() let imagV : UIImageView = UIImageView()
imagV.contentMode = .scaleAspectFill imagV.contentMode = .scaleAspectFill
imagV.clipsToBounds = true imagV.clipsToBounds = true
imagV.image = UIImage(named: "global_default_image")
return imagV return imagV
}() }()
...@@ -86,9 +87,9 @@ private extension YHHomeBannerCollectionViewCell { ...@@ -86,9 +87,9 @@ private extension YHHomeBannerCollectionViewCell {
effectV.isHidden = false effectV.isHidden = false
if let url = URL(string: model.img_url) { if let url = URL(string: model.img_url) {
// bannerImagV.kf.setImage(with: url)
bannerImagV.kf.setImage(with: url, placeholder: UIImage(named: "global_default_image")) bannerImagV.kf.setImage(with: url, placeholder: UIImage(named: "global_default_image"))
} else {
bannerImagV.image = UIImage(named: "global_default_image")
} }
bannerTitleLable.text = model.name bannerTitleLable.text = model.name
} }
......
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