Przeglądaj źródła

滑动半屏不重新播放视频

huzhiqiang 3 lat temu
rodzic
commit
34b882c7fe

+ 1 - 1
MusicVideoPlus/Classes/Modules/Home/Controllers/MVHomeController.swift

@@ -541,7 +541,7 @@ extension MVHomeController {
 //                            self?.playVideo(page: (self?.lastBnnerSelectIndex ?? IndexPath(row: 0, section: 0)).row)
 
                             // 视频列表跳转
-                            self?.viewListView.currentIndex = (self?.lastBnnerSelectIndex ?? IndexPath(row: 0, section: 0)).row
+//                            self?.viewListView.currentIndex = (self?.lastBnnerSelectIndex ?? IndexPath(row: 0, section: 0)).row
                             self?.viewListView.scrollToItem(at: (self?.lastBnnerSelectIndex ?? IndexPath(row: 0, section: 0)).row, animated: false)
 
                         } else {

+ 12 - 10
MusicVideoPlus/Classes/Modules/Home/Views/Banner/MVBanner.swift

@@ -29,6 +29,7 @@ public class MVBanner: UIView {
     
     public var isAutoPlay: Bool = true
     public var autoTimeInterval: TimeInterval = 0
+    var currentPage = -1
     public var isShowPageControl: Bool = true {
         didSet {
             self.pageControl.isHidden = !self.isShowPageControl
@@ -68,12 +69,12 @@ public class MVBanner: UIView {
     public override func layoutSubviews() {
         super.layoutSubviews()
         self.collectionView.frame = self.bounds
-        var size = self.pageControl.size(forNumberOfPages: self.pageControl.numberOfPages)
-        size.width = min(self.flowLayout.itemSize.width, size.width)
-        self.pageControl.frame = CGRect(origin: .zero, size: size)
-        var center = self.center
-        center.y = self.flowLayout.itemSize.height - self.pageControl.frame.height * 0.5
-        self.pageControl.center = center
+//        var size = self.pageControl.size(forNumberOfPages: self.pageControl.numberOfPages)
+//        size.width = min(self.flowLayout.itemSize.width, size.width)
+//        self.pageControl.frame = CGRect(origin: .zero, size: size)
+//        var center = self.center
+//        center.y = self.flowLayout.itemSize.height - self.pageControl.frame.height * 0.5
+//        self.pageControl.center = center
     }
     
     private func setupSubviews() {
@@ -119,13 +120,14 @@ fileprivate extension MVBanner {
         return IndexPath(item: self.index(realIndex: realIndex), section: 0)
     }
     func setCurrentPage(_ page: Int) {
+        if currentPage == page{
+            return
+        }
+        
         if (delegate?.responds(to: #selector(delegate?.pageControl(currentPage:))) ?? false) {
             self.delegate?.pageControl?(currentPage: page)
-        } else {
-            if self.pageControl.currentPage != page {
-                self.pageControl.currentPage = page
-            }
         }
+        currentPage = page
     }
     func checkRealOutOfBounds() {
         if self.currentIndex <= (MVInsetCount - 1) {