1.注意 2.
uiscrollview
使用1.
給scrollview
新增內容 2.
設定contentsize
屬性(只能在**中設定) 3.
uiscrollview
重要屬性
1.contentoffset(
通過按鈕改變其位移)
2.contentinset
注意:通過
stroryboard
設定立即生效,通過**設定需配合
contentoffect
手動位移
@property
(nonatomic
) cgpoint
contentoffset;
這個屬性用來表示
uiscrollview
滾動的位置
@property
(nonatomic
) cgsize
contentsize;
這個屬性用來表示
uiscrollview
內容的尺寸,滾動範圍(能滾多遠)
@property
(nonatomic
) uiedgeinsets
contentinset;
這個屬性能夠在
uiscrollview的4
周增加額外的滾動區域
xib介面布局(減少**) 2.
通過最後按鈕的
frame
獲取contentsize
的height
(cgrectgetmaxy(frame)) 3.
storyboard
設定contentinset
(使用**設定還需設定
contentoffset)
5.scrollview
**方法
1.要想成為**遵守協議
(uiscrollviewdelegate) 1.
宣告協議
(一般協議名稱:控制項名稱
+ delegate) 2.
實現協議定義的介面方法 3.
設定**(
uiviewcontroller
成為scrollview
的**)
// 使用者開始拖拽時呼叫
- (void
)scrollviewwillbegindragging:(
uiscrollview
*)scrollview;
// 滾動到某個位置時呼叫
- (void
)scrollviewdidscroll:(
uiscrollview
*)scrollview;
// 使用者結束拖拽時呼叫
- (void
)scrollviewdidenddragging:(
uiscrollview
*)scrollview willdecelerate:(
bool
)decelerate;
6.scrollview
實現縮放功能 1.
設定最大、最小縮放倍數(注:倍數相等時,無法縮放)
minimumzoomscale
:縮小的最小比例
maximumzoomscale
:放大的最大比例
2.當使用者在
uiscrollview
身上使用捏合手勢時,
uiscrollview
會呼叫**的
viewforzoominginscrollview:
方法,這個方法返回的控制項就是需要進行縮放的控制項
- (uiview
*)viewforzoominginscrollview:(
uiscrollview
*)scrollview;
縮放完畢的時候呼叫
- (void
)scrollviewwillbeginzooming:(
uiscrollview
*)scrollview withview:(
uiview
*)view
正在縮放的時候呼叫
- (void
)scrollviewdidzoom:(
uiscrollview
*)scrollview
7.輪播功能
1.將內容新增到
scrollview中(5
張) 2.設定
scrollview
的contentsize 3.
設定翻頁屬性(
uiscrollview
的pageenabled
屬性設定為
yes)
4.新增
uipagecontrol控制項
5.設定
uipagecontrol
的頁碼(
利用contentsize
計算頁碼)
@property
(nonatomic
) nsinteger
numberofpages;
@property
(nonatomic
) nsinteger
currentpage;
@property
(nonatomic
) bool
hidesforsinglepage;
@property
(nonatomic
,retain
) uicolor
*pageindicatortintcolor;
@property
(nonatomic
,retain
) uicolor
*currentpageindicatortintcolor;
6.增加自動滾動(
nstimer
實現)
呼叫下面的方法就會開啟乙個定時任務
+ (nstimer
*)scheduledtimerwithtimeinterval:(
nstimeinterval
)ti target:(
id)atarget
selector:(
sel)aselector
userinfo:(
id)userinfo
repeats:(
bool
)yesorno;
每隔ti
秒,呼叫一次
atarget
的aselector
方法,yesorno
決定了是否重複執行這個任務
通過invalidate
方法可以停止定時器的工作,一旦定時器被停止了,就不能再次執行任務。只能再建立乙個新的定時器才能執行新的任務
- (void
)invalidate;
UIScrollView的屬性總結
uiscrollview的屬性總結 屬性 作用 cgpoint contentoffset 監控目前滾動的位置 cgsize contentsize 滾動範圍的大小 uiedgeinsets contentinset 檢視在scrollview中的位置 iddelegate 設定協議 bool di...
UIScrollView實現重用
import inte ce test19viewcell uiview 索引 property nonatomic,assign nsuinteger index 文字 property nonatomic,copy nsstring text 文字控制項 property nonatomic,r...
UIScrollView使用注意
這裡討論同時使用autolayout 和 uiscrollview 的情況 1.如果內容元件的尺寸能夠確定 則直接在storyboard 中設定乙個uiview包裹住所有內容元件,並在storyboard中設定固定的高度。這樣,uiscrollview設不設定contentsize都可以正常顯示。2...