iOS之使用collectionView實現NavigationBar上的滾動按鈕

本文適合菜鳥,大神請忽略(如果有說錯了,請指出,謝謝)先說說我做的一些效果吧,我實現的效果類似于今日頭條NavigationBar上面滾動按鈕,被點擊的按鈕會滾動到中間位置。實現思路,使用collectionView來實現這樣比scrollView上面直接添加按鈕來的好因為考慮到復用和節省內存的緣故,棄用最初的想法——scrollView+Button。步驟如下:

1、創建UICollectionView

2、設置item自適應,這個主要考慮到每一個按鈕(item)的文本內容不固定,代碼如下:

自適應item

3、在cell選中事件里面設置選中時的顏色,樣式等,代碼如下:

cell選中狀態、滾動到視圖中間

4、最后當然是取消選中狀態了,代碼如下:

取消

總的來說代碼上很簡單就是了,主要是運用到一些比較少用到的代理方法或者函數,比如說:

1、[_navCollectionView indexPathsForVisibleItems];獲取可是的item;

2、[_navCollectionView scrollToItemAtIndexPath:indexPath atScrollPosition:UICollectionViewScrollPositionCenteredHorizontally animated:YES];設置滾動的方向:左、右、水平中、垂直中。

3、[collectionView cellForItemAtIndexPath:indexPath];適用于設置cell的高度、寬度的時候,它的作用是獲取cell的屬性。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容