您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機編程>

iOS 上怎么可以實現(xiàn)可展開式菜單

大?。?/span>0.10 MB 人氣: 2017-09-25 需要積分:2

?

幾個月前,我有機會實現(xiàn)了一個可展開式菜單,效果同知名iOS 應(yīng)用 Airbnb。然后,我認(rèn)為把它封裝為庫會更好?,F(xiàn)在我想和大家分享用于實現(xiàn)漂亮的滾動驅(qū)動動畫采用的一些解決方案。

iOS 上怎么可以實現(xiàn)可展開式菜單

此庫支持 3 個狀態(tài)。主要目的是在滾動 UIScrollView 時獲得流暢的轉(zhuǎn)換。

iOS 上怎么可以實現(xiàn)可展開式菜單

支持的狀態(tài)

UIScrollView

UIScrollView是 iOS SDK 中的一個支持滾動和縮放的視圖。它是 UITableView和UICollectionView的基類,因此,只要支持 UIScrollView,就可以使用它。

UIScrollView 使用 UIPanGestureRecognizer 在內(nèi)部檢測滾動手勢。UIScrollView 的滾動狀態(tài)被定義為 contentOffset: CGPoint 屬性。 可滾動區(qū)域由 contentInsets 和 contentSize 聯(lián)合決定。 因此,起始的 contentOffset 為 *CGPoint(x: -contentInsets.left, y: -contentInsets.right)* ,結(jié)束值為 *CGPoint(x: contentSize.width?—?frame.width+contentInsets.right, y: contentSize.height?—?frame.height+contentInsets.bottom)*.

UIScrollView 有一個 bounces: Bool 屬性。bounces 能夠避免設(shè)置 contentOffset 高于/低于限定值。我們需要記住這一點。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?