最近在做乙個旅行類的專案,裡面喲孤兒橫向滑動的選項卡功能,乍一看設計圖,感覺很簡單。橫向滑動,collectionview的flowlayout有這個設定屬性,分分鐘搞定。後來需求要每次滑動乙個選項卡。這就讓我有點棘手了,因為心裡知道這個應該是要自己去計算偏移量的問題了
實現這個功能,主要就是呼叫了乙個uiscrollview
的**方法- (void)scrollviewwillenddragging:(uiscrollview *)scrollview withvelocity:(cgpoint)velocity targetcontentoffset:(inout cgpoint *)targetcontentoffset
不說別的了,直接上**
- (void)scrollviewwillenddragging:(uiscrollview *)scrollview withvelocity:(cgpoint)velocity targetcontentoffset:(inout
cgpoint *)targetcontentoffsetelse
if (newtargetoffset < 0) else
if (abs(scrollview.contentsize.width - (newtargetoffset + pagewidth))< pagewidth)
newtargetoffset = ceilf(newtargetoffset);
targetcontentoffset->x = currentoffset;
[scrollview setcontentoffset:cgpointmake(newtargetoffset, 0) animated:yes];
}複製**
這裡面pagewidth
的值是乙個item
的寬度加間距,之後對於滑到最後乙個item
的時候不足乙個item
的寬度做了相應的處理。
如果你們的設計是兩邊都有留白的情況,你可以設定flowlayout.sectioninset
,相應的collectionview
的contentinset
屬性也要做相應的處理
大神們有什麼好的建議多給我提出來
demo
CollectionView快速建立
pragma 配置檔案 self collectioinview registerclass shstorecollectioncell class forcellwithreuseidentifier storecollectioncell nsinteger numberofsectionsin...
swift中collectionView的簡單用法
之前寫過oc中collectionview的用法,現在再看看swift中collectionview的用法,有興趣的朋友,可以兩者前後比較下區別,swift現在沒有穩定下來,語法更新的比較快,但是它核心的一些東西,已經定型了。這些還是靠讀者們自己去挖掘吧。這裡簽署資料來源和 此時不需要引入layou...
IOS學習之collectionView的使用
1 首次建立初始化時候肯定會遇到以下錯誤 uicollectionview must be initialized with a non nil layout parameter 解決辦法 使用乙個非空的layout初始化集合檢視,具體 源 wbsearchcontroller search wbs...