2017-02-18 85 views
2

我有要求顯示iPhone中的線性垂直列表中的數據,但在iPad中顯示它像收集視圖/網格視圖。如何在iPad中顯示集合視圖但在iPhone中顯示列表?

在iPhone它應該看起來像

enter image description here

但是在ipad上它應該看起來像

enter image description here

我已經在iPhone通過表視圖實現的,但不知道如何將其顯示爲網格視圖

  1. 我應該要爲iPad創建單獨的視圖控制器如果是 那我該怎麼定義兩個視圖控制器一個用於iPhone和其他 爲iPad

  2. 什麼是實現這一目標的最佳途徑?

請幫我我想實現它,但找不到任何方法。

映像從Vimeo的iTunes應用程序https://itunes.apple.com/us/app/vimeo/id425194759?mt=8

回答

3

複製你並不需要創建兩個不同的控制器對IPADIPHONE。只需創建一個控制器UICollectionView,然後使用UICollectionViewFlowLayout爲您的UICollectionView設置UICollectionView的佈局根據設備的天氣IPADIPHONE如果您有任何疑問,請嘗試此解決方案請告訴我們。

嘗試這種解決方案

UICollectionViewFlowLayout *collectionViewFlowLayout = [[UICollectionViewFlowLayout alloc] init]; 
[collectionViewFlowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal]; 
self.myCollectionView.collectionViewLayout = collectionViewFlowLayout; 

你也可以使用的UICollectionViewFlowLayout多個屬性。

檢查此解決方案,並讓我知道它是否適合您。

檢查這些鏈接以供參考:

  1. https://www.raywenderlich.com/136159/uicollectionview-tutorial-getting-started

  2. https://www.raywenderlich.com/107439/uicollectionview-custom-layout-tutorial-pinterest

+0

如何使用UICollectionViewFlowLayout將列表設置爲Ipad中的網格和iPhone中的線性垂直列表?並且可以向我提供任何示例或教程的鏈接。 –

1

做到這一點的方法是使用自適應佈局和故事板的尺寸類別。您根本不需要編寫任何代碼,而且您還可以使用未知尺寸的多任務/分屏和未來iOS設備。您可以根據天氣的寬度是緊湊的(如iPhone)或常規的(如iPad)使任何視圖出現或消失。在視圖檢查您可以添加一個變化緊湊的寬度是這樣的:

Adding a compact width variation to view

單擊添加變化的勾去掉「安裝」。現在只有在設備寬度緊湊時纔會安裝該視圖。你可以通過一個容器視圖來完成這個工作,其中嵌入了一個嵌套到UITableViewController。

如果您將故事板視爲iPad(通過單擊底部顯示「視圖爲」的小圖標),該視圖將消失。用另一個繼承到UICollectionViewController的容器視圖進行替換,並再次執行相同的操作,但是這次添加一個具有常規寬度的變體。

就是這樣。

(對不起,我沒有足夠的積分,顯示圖像)

這裏是一個Demo project創建像你想的佈局和行爲。所有的動作都在故事板中,視圖控制器就是骷髏。