我有一個UITableViewController
,它顯示了自定義類型的NSArray的屬性。縱向拍攝時,我想顯示三個標籤(表現爲列),但在橫向拍攝時,我可以更多地放在UITableViewCell
上,並且我想顯示5個標籤。根據方向更改UITableViewCell的內容
目前,我通過把UILabels
在UITableViewCell
,並給他們貼標籤,這樣我可以得到的子視圖,並設置在cellForRowAtIndexPath
方法文本鋪設在故事板編輯器的原型細胞本人的肖像細胞。我開始沿着這條路輕鬆使用我的標籤自動佈局。
我發現了很多建議,當方向改變時重新調整/移動單元格上的項目,但不知道如何改變可見子視圖的數量。我正在考慮嘗試使用兩個不同的單元格標識符(其中一個具有更多橫向模式標籤),並根據[UIDevice currentDevice].orientation
選擇我想要的。我想還需要強制輪換重新加載單元格。
有沒有更容易/更好的方法來做到這一點?
謝謝我沒有考慮換掉整個View Controller。這將使佈局更清潔,但我最終不得不維護兩個類而不是一個,並且避免在兩個VC之間重複代碼將很困難。 – SlimCheney
更糟糕的是,如果您在if-else語句中重複了代碼!你應該真的計算你可以保存多少重複的代碼。如果太多了,也許你應該考慮進一步將VC的某些邏輯與其他類分離(也許你的視圖控制器正在執行數據模型任務?) – TAKeanice