標籤:
1 是什麼: UIScrollView是一個能夠滾動的視圖控制項,可以用來展示大量的內容,並且可以通過滾動查看所有的內容2 怎麼用: UIScrollView的基本使用
1> UIScrollView的用法很簡單
1.1 將需要展示的內容添加到UIScrollView中
1.2 設定UIScrollView的contentSize屬性,告訴UIScrollView所有內容的尺寸,也就是告訴它滾動的範圍(能滾多遠,滾到哪裡是盡頭)
1.3 UIScrollView顯示內容的小細節
超出UIScrollView邊框的內容會被自動隱藏
使用者可以用過手勢拖動來查看超出邊框並被隱藏的內容
3 . 注意:
如果UIScrollView無法滾動,可能是以下原因:
1> 沒有設定contentSize ØscrollEnabled = NO
2>沒有接收到觸摸事件:userInteractionEnabled = NO
3>…
4> 特別注意:當你用UIScrollView,特定需求記得讓將UIScrollView的水平與垂直捲軸去除,
不是,水平與垂直捲軸也會作為UIScrollView的子控制項的一部分
這樣就,就可能導致你在UIScrollView添加自訂控制項時,影響你布局控制項的位置而不是你所想看到的效果
或者你用UIScrollView做分頁控制項,也會取出其子控制項來布局UIImageView的位置
4 常見屬性:
@property(nonatomic) CGPoint contentOffset; // 這個屬性用來表示UIScrollView滾動的位置(其實就是內容左上方與scrollView左上方的間距值) @property(nonatomic) CGSize contentSize; // 這個屬性用來表示UIScrollView內容的尺寸,滾動範圍(能滾多遠) @property(nonatomic) UIEdgeInsets contentInset; // 這個屬效能夠在UIScrollView的4周增加額外的捲動區域,一般用來避免scrollView的內容被其他控制項擋住
5 其他屬性:
@property(nonatomic) BOOL bounces; // 設定UIScrollView是否需要彈簧效果 @property(nonatomic,getter=isScrollEnabled) BOOL scrollEnabled; // 設定UIScrollView是否能滾動 @property(nonatomic) BOOL showsHorizontalScrollIndicator; // 是否顯示水平捲軸 @property(nonatomic) BOOL showsVerticalScrollIndicator; // 是否顯示垂直捲軸
6 UIScrollView的代理(delegate)
很多時候,我們想在UIScrollView正在滾動 或 滾動到某個位置 或者 停止滾動 時做一些特定的操作
要想完成上述功能,前提條件就是能夠監聽到UIScrollView的整個滾動過程
當UIScrollView發生一系列的滾動操作時, 會自動通知它的代理(delegate)對象,給它的代理髮送相應的訊息,讓代理得知它的滾動情況
也就是說,要想監聽UIScrollView的滾動過程,就必須先給UIScrollView設定一個代理對象,然後通過代理得知UIScrollView的滾動過程
1 、 我們必須明確 UIScrollView和delegate的如何通訊 :
2 、熟練掌握與瞭解 成為delegate的必備條件
UIScrollView將delegate需要實現的方法都定義在了UIScrollViewDelegate協議中,因此要想成為UIScrollView的delegate,必須遵守UIScrollViewDelegate協議,然後實現協議中相應的方法,就可以監聽UIScrollView的滾動過程了
3 、一般情況下,就設定UIScrollView所在的控制器 為 UIScrollView的delegate
設定控制器為UIScrollView的delegate方法:
通過代碼(self就是控制器)
self.scrollView.delegate = self;
然後,控制器應該遵守UIScrollViewDelegate協議
最後,實現協議中定義的相關方法
UIScrollView的基本使用就講到這,下一節UIScrollView繼續將講解UIScrollView的縮放實現。
UIScrollView —— 基本使用(一)