UIScrollView滾動視圖的方法總結(jié)-創(chuàng)新互聯(lián)


UIScrollView的屬性總結(jié)

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),赫山企業(yè)網(wǎng)站建設(shè),赫山品牌網(wǎng)站建設(shè),網(wǎng)站定制,赫山網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,赫山網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
屬性作用
CGPoint contentOffSet--------------------------監(jiān)控目前滾動的位置
CGSize contentSize------------------------------滾動范圍的大小
UIEdgeInsets contentInset---------------------視圖在scrollView中的位置
id<UIScrollerViewDelegate> delegate------設(shè)置協(xié)議
BOOL directionalLockEnabled----------------指定控件是否只能在一個方向上滾動
BOOL bounces------------------------------------控制控件遇到邊框是否反彈
BOOL alwaysBounceVertical------------------控制垂直方向遇到邊框是否反彈
BOOL alwaysBounceHorizontal--------------控制水平方向遇到邊框是否反彈
BOOL pagingEnabled---------------------------控制控件是否整頁翻動
BOOL scrollEnabled-----------------------------控制控件是否能滾動
BOOL showsHorizontalScrollIndicator------控制是否顯示水平方向的滾動條
BOOL showsVerticalScrollIndicator----------控制是否顯示垂直方向的滾動條
UIEdgeInsets scrollIndicatorInsets-----------指定滾動條在scrollerView中的位置
UIScrollViewIndicatorStyle   indicatorStyle-設(shè)定滾動條的樣式
float decelerationRate---------------------------改變scrollerView的減速點位置
BOOL tracking-------------------------------------監(jiān)控當(dāng)前目標(biāo)是否正在被跟蹤
BOOL dragging------------------------------------監(jiān)控當(dāng)前目標(biāo)是否正在被拖拽
BOOL decelerating-------------------------------監(jiān)控當(dāng)前目標(biāo)是否正在減速
BOOL delaysContentTouches-----------------控制視圖是否延時調(diào)用開始滾動的方法
BOOL canCancelContentTouches------------控制控件是否接觸取消touch的事件
float minimumZoomScale-----------------------縮小的最小比例
float maximumZoomScale----------------------放大的大比例
float zoomScale-----------------------------------設(shè)置變化比例
BOOL bouncesZoom----------------------------控制縮放的時候是否會反彈
BOOL zooming------------------------------------判斷控件的大小是否正在改變
BOOL zoomBouncing---------------------------判斷是否正在進(jìn)行縮放反彈
BOOL scrollsToTop-------------------------------控制控件滾動到頂部

這里把UIScrollView的幾個要點總結(jié)下:

從你的手指touch屏幕開始,scrollView開始一個timer,如果:

1.  150ms內(nèi)如果你的手指沒有任何動作,消息就會傳給subView。

2.  150ms內(nèi)手指有明顯的滑動(一個swipe動作),scrollView就會滾動,消息不會傳給subView,這里就是產(chǎn)生問題二的原因。

3. 150ms內(nèi)手指沒有滑動,scrollView將消息傳給subView,但是之后手指開始滑動,scrollView傳送touchesCancelled消息給subView,然后開始滾動。

觀察下tableView的情況,你先按住一個cell,cell開始高亮,手不要放開,開始滑動,tableView開始滾動,高亮取消。

delaysContentTouches的作用:

這個標(biāo)志默認(rèn)是YES,使用上面的150ms的timer,如果設(shè)置為NO,touch事件立即傳遞給subView,不會有150ms的等待。

cancelsTouches的作用:

這個標(biāo)準(zhǔn)默認(rèn)為YES,如果設(shè)置為NO,這消息一旦傳遞給subView,這scroll事件不會再發(fā)生。

UIScrollViewDelegate  協(xié)議

//scrollView滾動時,就調(diào)用該方法。任何offset值改變都調(diào)用該方法。即滾動過程中,調(diào)用多次

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{

  // 從中可以讀取contentOffset屬性以確定其滾動到的位置。

  // 注意:當(dāng)ContentSize屬性小于Frame時,將不會出發(fā)滾動

}

// 當(dāng)開始滾動視圖時,執(zhí)行該方法。一次有效滑動(開始滑動,滑動一小段距離,只要手指不松開,只算一次滑動),只執(zhí)行一次。

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{}

// 滑動scrollView,并且手指離開時執(zhí)行。一次有效滑動,只執(zhí)行一次。

// 當(dāng)pagingEnabled屬性為YES時,不調(diào)用,該方法

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{}

// 滑動視圖,當(dāng)手指離開屏幕那一霎那,調(diào)用該方法。一次有效滑動,只執(zhí)行一次。

// decelerate,指代,當(dāng)我們手指離開那一瞬后,視圖是否還將繼續(xù)向前滾動(一段距離),經(jīng)過測試,decelerate=YES

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{}

// 滑動減速時調(diào)用該方法。

- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{}

// 滾動視圖減速完成,滾動將停止時,調(diào)用該方法。一次有效滑動,只執(zhí)行一次。

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{}

// 當(dāng)滾動視圖動畫完成后,調(diào)用該方法,如果沒有動畫,那么該方法將不被調(diào)用

- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{}

// 返回將要縮放的UIView對象。要執(zhí)行多次

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{}

// 當(dāng)scrollView縮放時,調(diào)用該方法。在縮放過程中,回多次調(diào)用

- (void)scrollViewDidZoom:(UIScrollView *)scrollView{}

// 當(dāng)將要開始縮放時,執(zhí)行該方法。一次有效縮放,就只執(zhí)行一次。

- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{}

// 當(dāng)縮放結(jié)束后,并且縮放大小回到minimumZoomScale與maximumZoomScale之間后(我們也許會超出縮放范圍),調(diào)用該方法。

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{}

// 指示當(dāng)用戶點擊狀態(tài)欄后,滾動視圖是否能夠滾動到頂部。需要設(shè)置滾動視圖的屬性:_scrollView.scrollsToTop=YES;

- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{}

// 當(dāng)滾動視圖滾動到最頂端后,執(zhí)行該方法

- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{

}

創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。

文章標(biāo)題:UIScrollView滾動視圖的方法總結(jié)-創(chuàng)新互聯(lián)
文章URL:http://muchs.cn/article22/dcjccc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣外貿(mào)網(wǎng)站建設(shè)、做網(wǎng)站電子商務(wù)、企業(yè)網(wǎng)站制作、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營