UIscrollVIew

第一天

  • UIscrollVIew

UIscrollVIew是一個(gè)類,繼承自UIView;UIVIew的相關(guān)屬性和方法,UILabel也擁有

=====UIScrollView特有屬性====
UIScrollView滾動(dòng)原理:
1.UIScrollView中有一個(gè)contentView屬性,專門用來負(fù)責(zé)添加想要顯示在UIScrollView的子視圖(使用UIScrollView的對象去調(diào)用addSubview方法添加的子視圖實(shí)質(zhì)是添加到contentView上的)。

2.默認(rèn)情況下contentView的大小和
UIScrollView對象的大小是一樣的,如果想要UIScrollView可以滾動(dòng),那么contentView的大小必須比UIScrollView的大小要大
// a.如果想要只能左右滾動(dòng)就讓contentView的寬度比UIScrollView的寬度寬
// b.如果想要只能上下滾動(dòng)就讓contentView的高度比UIScrollView的高度高
// c.如果想要上下左右滾動(dòng)就讓contentView的寬度和高度比UIScrollView的寬高度大

  • 想要實(shí)現(xiàn)滑動(dòng)就要實(shí)現(xiàn)下面代碼

scrollView.contentSize = CGSizeMake(scrollView.bounds.size.width, scrollView.bounds.size.height * 2)

 // ***2.設(shè)置內(nèi)容偏移量contentOfset
    scrollView.contentOffset = CGPointMake(200, 200)
    // 設(shè)置偏移量的時(shí)候是否帶動(dòng)畫效果
    scrollView.setContentOffset(CGPointMake(200, 200), animated: true)
    
    // *3.contentInset(所有的結(jié)構(gòu)體都有一個(gè)Make方法)
    // 滾動(dòng)結(jié)束后圖片邊與頻幕邊的間距值,如果是0就是無間距
    scrollView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
    
    // 4.directionalLockEnabled設(shè)置當(dāng)向一個(gè)方向滾動(dòng)的時(shí)候,是否鎖住向另外一個(gè)方向的滾動(dòng)(true -> 同一時(shí)刻只能有一個(gè)方向的滾動(dòng)),默認(rèn)是false
    scrollView.directionalLockEnabled = true
    
    // 5.設(shè)置拖到邊界的時(shí)候是否有反彈效果(默認(rèn)為true)
    scrollView.bounces = false
    
    // ***6.是否可以分頁,默認(rèn)是false。true -> 每次滾動(dòng),滾動(dòng)scrollView的frame的距離。false -> 每次滾動(dòng)滑動(dòng)的距離
    scrollView.pagingEnabled = true
    
    // 7.設(shè)置是否可以滾動(dòng)(默認(rèn)為true), false -> scrollView不能滾動(dòng),true -> scrollView可以滾動(dòng)(鎖屏)
    scrollView.scrollEnabled = true
    
    // **8.設(shè)置是否顯示滾動(dòng)條,默認(rèn)是true
    scrollView.showsVerticalScrollIndicator = true   // 垂直方向
    scrollView.showsHorizontalScrollIndicator = true   // 水平方向
    
    // 9.設(shè)置滾動(dòng)條到scrollView上左下右的邊距,只有下和右有效
    // 參數(shù)1: 設(shè)置x值無效
    // 參數(shù)2: 設(shè)置y值無效
    // 參數(shù)3: 設(shè)置下面的距離
    // 參數(shù)4: 設(shè)置右邊的距離
    scrollView.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, 10, 10)
    
    // 10.設(shè)置滾動(dòng)條的風(fēng)格
    // .Default  (默認(rèn))灰色
    // .Black    黑色的滾動(dòng)條
    // .Whitr    白色的滾動(dòng)條
    scrollView.indicatorStyle = .White
    

    // 12.設(shè)置是否可以自動(dòng)滾動(dòng)到頂部(點(diǎn)擊上面狀態(tài)欄的時(shí)候),默認(rèn)為true
    scrollView.scrollsToTop = true
    
    // 13.縮放相關(guān),默認(rèn)都是1 (鏈接協(xié)議才有效果)
    // 設(shè)置最大縮放倍數(shù)
    scrollView.maximumZoomScale = 3
    // 設(shè)置最小的縮放倍數(shù)
    scrollView.minimumZoomScale = 0.5
    // 當(dāng)前的縮放倍數(shù)
    scrollView.zoomScale = 2
  • UIPageControl

注意:pageControl不能添加到scrollView上,而是添加到scrollView父視圖上

// 核心屬性
    // 1.設(shè)置頁書
    self.pageControl.numberOfPages = 5
    
    // 2.設(shè)置當(dāng)前頁(默認(rèn)為0)
    self.pageControl.currentPage = 0
    
    // 3.設(shè)置pageControl對象的原點(diǎn)的顏色
    self.pageControl.pageIndicatorTintColor = UIColor.yellowColor()
    // 4.設(shè)置選中狀態(tài)的的顏色
    self.pageControl.currentPageIndicatorTintColor = UIColor.redColor()
    // 關(guān)閉用戶交互(就是客戶體驗(yàn),不能點(diǎn)擊了)(默認(rèn)true開啟)
    self.pageControl.userInteractionEnabled = false
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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