UI(八)滾動視圖UIScrollView、UIPageControl

* UIScrollView的概念

?* UIScrollView的重要屬性

?* UIPageControl常用屬性

?* UIScrollView的代理方法(放大、縮小、拖拽)


#pragma ---UIScrollView的概念---

?*? UIScrollView是一個能夠滾動的試圖控件

*?能夠滑動的視圖,都是繼承于UIScrollView,而UIScrollView繼承于UIView

?*UIScrollView的子類:UITableView、UITextView、UICollectionView


#pragma --- UIScrollView的重要屬性---

?contentSize?能夠讓視圖顯示更多的內(nèi)容,contSize就是UIScrollView實際內(nèi)容大小.如果contentSize的尺寸比ScrollView小,或者相等,則ScrollView不能滑動

?contentOffset?平移量,能夠直接定位到你想看的內(nèi)容

?contentInset?給ScrollView四周增加額外的滾動區(qū)域,內(nèi)容的內(nèi)邊框

showsHorizontalScrollIndicator?是否設(shè)置水平滾動條

showsVerticalScrollIndicator?是否設(shè)置垂直滾動條

bounces?是否設(shè)置回滾效果

?scrollEnabled?是否滾動

?indicatorStyle?設(shè)置滾動條樣式

?pagingEnabled?設(shè)置滾動分頁

?要放大得掛上代理

maximumZoomScale?圖片最多能放大多少倍?

minimumZoomScale?圖片最多能縮小多少倍

decelerationRate?減速速率

//設(shè)置不包含導(dǎo)航欄?解決全屏滾動視圖上面導(dǎo)航欄處無圖片的問題,圖片從導(dǎo)航欄一下開始定位計算

?self.edgesForExtendedLayout?=?UIRectEdgeNone;?

//設(shè)置滾動視圖方向垂直

scrollView.direction?=?Vertical;


#pragma --- UIPageControl---

?//設(shè)置數(shù)目

?pageControl.numberOfPages?= 3;

? ? //設(shè)置只有一頁的時候不顯示

? ? pageControl.hidesForSinglePage?= YES;

?//設(shè)置在第幾個顯示

?pageControl.currentPage?= 1;

?//設(shè)置它的光圈顏色和光圈內(nèi)部顏色

?pageIndicatorTintColor?未選中的圈圈顏色

?currentPageIndicatorTintColor?選中的圈圈顏色

?//設(shè)置滾動條是否顯示

?showsHorizontalScrollIndicator

?showsVerticalScrollIndicator


?*將UIPageControl添加到UIScrollView上會使之隨之移動

所以應(yīng)該添加到視圖上

? ? [self.view addSubview:pageControl];


//即將減速的代理方法

//在此編寫讓pageControl光圈隨滾動視圖變化

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

?NSInteger?curPage = scrollView.contentOffset.x/CGRectGetWidth(scrollView.frame);

?pageControl.currentPage?= curPage;

}


?#pragma ---UIScrollView代理方法---

?已經(jīng)滾動

- (void)scrollViewDidScroll:(UIScrollView*)scrollView

?已經(jīng)縮放

- (void)scrollViewDidZoom:(UIScrollView *)scrollView

?開始拖拽

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

?將要拖拽結(jié)束 獲得降速的速率 和偏移量

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inoutCGPoint *)targetContentOffset


?拖拽結(jié)束 將要降速

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


?開始降速

- (void)scrollViewWillBeginDecelerating:(UIScrollView?*)scrollView

?結(jié)束降速

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView


滾動動畫將要消失

- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView


?設(shè)置縮放視圖

- (nullable?UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView


?開始縮放

- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(nullableUIView *)view

?結(jié)束縮放 以及縮放的比例

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(nullableUIView *)view atScale:(CGFloat)scale;


?是否可以滾動到頂部 設(shè)置YES?可以

- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView


?移動到頂部調(diào)用

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

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 掌握 UIScrollView的常見屬性 UIScrollView的常用代理方法 UIScrollView的縮放 ...
    JonesCxy閱讀 2,876評論 1 12
  • import "AppDelegate.h" import "RootViewController.h" impo...
    ThEAll閱讀 827評論 2 2
  • 一、簡介 <<繼承關(guān)系:UIScrollView --> UIView-->UIResponder-->NSObj...
    無邪8閱讀 2,083評論 0 0
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,208評論 3 119
  • 父子二人飲茶。 兒問: “為什么要我讀書?” 父答: 我這么跟你說吧!你讀了書,喝這茶時就會說:"此茶湯色澄紅透亮...
    魚越丶放空閱讀 144評論 1 0

友情鏈接更多精彩內(nèi)容