Commit d6724427 authored by Alex朱枝文's avatar Alex朱枝文

优化会员中心屏幕左滑事件

parent 5f183c50
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
import UIKit import UIKit
class YHMemberCenterViewController: YHBaseViewController { class YHMemberCenterViewController: YHBaseViewController, UIGestureRecognizerDelegate {
enum TableRow { enum TableRow {
case currentPrivilege(_ curLevel: YHMembershipLevel, _ count: Int, _ isOverLevel: Bool, _ myLevel: YHMembershipLevel) case currentPrivilege(_ curLevel: YHMembershipLevel, _ count: Int, _ isOverLevel: Bool, _ myLevel: YHMembershipLevel)
case myPrivilege(_ myLevel: YHMembershipLevel, _ count: Int, _ redeemCount: Int, _ redeemedCount: Int, _ needShowBottom: Bool) case myPrivilege(_ myLevel: YHMembershipLevel, _ count: Int, _ redeemCount: Int, _ redeemedCount: Int, _ needShowBottom: Bool)
...@@ -87,10 +87,13 @@ class YHMemberCenterViewController: YHBaseViewController { ...@@ -87,10 +87,13 @@ class YHMemberCenterViewController: YHBaseViewController {
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
setupUI() setupUI()
self.navigationController?.interactivePopGestureRecognizer?.delegate = self
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
let isFirstPage = headerView.bannerView.scrollOffset <= 0
self.navigationController?.interactivePopGestureRecognizer?.isEnabled = isFirstPage
if firstEnter { if firstEnter {
firstEnter = false firstEnter = false
requestData(isNeedLoading: true) requestData(isNeedLoading: true)
...@@ -104,10 +107,19 @@ class YHMemberCenterViewController: YHBaseViewController { ...@@ -104,10 +107,19 @@ class YHMemberCenterViewController: YHBaseViewController {
override func viewWillDisappear(_ animated: Bool) { override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated) super.viewWillDisappear(animated)
// 离开页面的时候,需要恢复屏幕边缘手势,不能影响其他页面
self.navigationController?.interactivePopGestureRecognizer?.isEnabled = true
if let currentLevel = currentLevel { if let currentLevel = currentLevel {
YHAnalytics.timeEnd(currentLevel.logKey) YHAnalytics.timeEnd(currentLevel.logKey)
} }
} }
override func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
if gestureRecognizer == navigationController?.interactivePopGestureRecognizer {
return headerView.bannerView.scrollOffset <= 0
}
return true
}
private func setupUI() { private func setupUI() {
gk_navBarAlpha = 0 gk_navBarAlpha = 0
......
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