-
使用collectionView
-
UIcollectionViewlayout 自定義prepared 呼叫順序,1.count,2.準備佈局,3.返回cell
-
重寫init 方法,設定外部引數照片的陣列,
-
一個檔案中可以建立多個class ,建立類flowLyout. newFertureCell
-
NewfeatureLayout 中prepareLayout() 方法 設定layout的引數,和collectionView的引數
-
什麼時候呼叫? 1.先呼叫一個有多少行cell 2.呼叫準備佈局 3.呼叫返回cell
override func prepareLayout() { // 1.設定layout佈局 itemSize = UIScreen.mainScreen().bounds.size minimumInteritemSpacing = 0 minimumLineSpacing = 0 scrollDirection = UICollectionViewScrollDirection.Horizontal // 2.設定collectionView的屬性 collectionView?.showsHorizontalScrollIndicator = false collectionView?.bounces = false collectionView?.pagingEnabled = true } 複製程式碼
-
cell 中設定button 顯示的動畫,設定button的點選傳送通知
-
設定** transform** 動畫,完成之後 transform 設定 CGAffineTransform.identity ,歸位初始值
-
usingSpringWithDamping 為(0-1), 數值越小,彈力越大
-
initialSpringVelocity 速度 5,10,15
// button的動畫 func buttonStartAnimation(){ cellButton.isHidden = false cellButton.transform = CGAffineTransform(scaleX: 0, y: 0); cellButton.isUserInteractionEnabled = false UIView.animate(withDuration: 2, delay: 0, usingSpringWithDamping: 0.8, initialSpringVelocity: 10, options: UIViewAnimationOptions.init(rawValue: 0), animations: { self.cellButton.transform = CGAffineTransform.identity }) { (_) in self.cellButton.isUserInteractionEnabled = true } } 複製程式碼
-
swift 3.0 之傳送通知
-
建立一個swift檔案,儲存常量,
-
通知變化為 NSNotification.Name(rawValue:"")
// 傳送通知 let SwitchRootVCNotification = NSNotification.Name(rawValue:"SwitchRootViewControllerKey") NotificationCenter.default.post(name:SwitchRootVCNotification, object: nil) // 接收通知 NotificationCenter.default.addObserver(self, selector: #selector(changeRoot), name: SwitchRootVCNotification, object: nil) 複製程式碼