Practice of CollectionView 02
這個練習延續上一篇collectionView的成果,為已經建立好的cell製作detailView,讓使用者點擊cell可以得到詳細的資訊。
新增navigation
如此一來進入cell後可以輕鬆返回collectionView
新增cell的controller
在file中新增一個檔案為ViewController的檔案,取名CellViewController,並且在storyboard中新增一個ViewController,將其class與新增的file連結,同時,為這個ViewController的storyboard ID也取名CellViewController。
利用didSelectItem來傳遞資料
不同於tableView使用didSelect來執行performSegue,collectionView的這個方法直接將destination與要傳送的資料都包含其中,然後利用push來進入CellViewController,而在destination裡一樣要設定參數來接收資訊。
注意:如果didSelectItem無法呼叫
當我們按下collectionView中的cell時,若沒有進入下一頁或是沒有任何反應,很可能是我們的滑鼠點擊並沒有點在collectionView上,導致didSelectItem無法被觸發。
解決的方法是將collectionView底下的圖層:contentView與ImageView的UserInteractionEnable都取消勾選,以防止我們的鼠標點擊其實是點在這兩者身上。