CollectionView 單個選項卡的滑動

2021-09-11 12:41:30 字數 1171 閱讀 7298

最近在做乙個旅行類的專案,裡面喲孤兒橫向滑動的選項卡功能,乍一看設計圖,感覺很簡單。橫向滑動,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,相應的collectionviewcontentinset屬性也要做相應的處理

大神們有什麼好的建議多給我提出來

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...