我在考慮繼承UICollectionView
並將其設置爲自己的委託並編寫自己的委託包裝器。內存方面是否安全? (該對象將指向自身)設置視圖作爲他們自己的代表swift
0
A
回答
0
這將是可能的,如前所述,但遵循MVC和其他類似的良好開發模式,保持數據源和委託與視圖分離是一個好主意。否則,您將走向一條難以測試代碼的路徑,並混合數據和視圖之間的界限。這種影響可能與您目前的計劃並不一致,但可能會稍後。 通過子類化集合視圖,您還將放棄視圖生命週期回調,包括viewDidLoad和viewWillAppear等,這些可以用來設置視圖。如果你想實現自己的數據源和委託包裝器,至少需要子類UICollectionViewController。這樣您就可以在不違反良好規範的情況下自定義行爲。
0
我覺得沒有問題,即(內存明智)作爲委託和數據源vaiables是weak
weak public var delegate: UICollectionViewDelegate?
weak public var dataSource: UICollectionViewDataSource?
0
只要你有一個有另一個類強烈的參考意見,你應該沒有問題。視圖將保存在內存中,直到父類釋放它,或者父類本身被處置。
相關問題
- 1. Swift Ios設置代理沒有自己作爲其他視圖控制器
- 2. 將用戶設置爲他們自己的視圖/關聯
- 3. Swift設置代理給自己EXC_BAD_ACCESS
- 4. 設置視圖代表是自己以外的東西
- 5. Swift - 我如何讓人們設置自己的Firebase後端?
- 6. 作爲代表設置視圖到視圖控制器
- 7. 多個視圖控制器與他們自己的xibs,當他們加載
- 8. 設置代理自己PaperFoldMenuController
- 9. 如何讓我的視圖控制器設置爲它自己的代理?
- 10. 將OnTouchListener設置爲自己創建的視圖
- 11. Android自定義圖庫視圖,設置自己的邊框
- 12. 在Material-UI中,他們爲什麼要將這個變量設置爲自己?
- 13. 分離圖像和列表,使他們在自己的行
- 14. Swift將viewController作爲子視圖添加到其他視圖
- 15. 用Swift設置自定義表格視圖頁腳
- 16. 如何在RecyclerView中設置每個視圖自己的位置?
- 17. IOS視圖代表,當他們被稱爲
- 18. 爲AndroidCustomGallery設置自己的位置
- 19. 如何爲我自己的類型設置我自己的表單表示
- 20. 表視圖設計Swift
- 21. 設置視圖的位置,因爲用戶拖動他們的手指
- 22. 爲什麼人們如何實現他們自己的malloc?
- 23. 如何展示我們自己的視角作爲默認?
- 24. 將UIScrollView代理設置爲它自己的自定義類
- 25. 設置沒有代表的視圖
- 26. 如何從其他視圖製作我自己的XML佈局視圖
- 27. 如何從LinearLayout自己的樣式設置LinearLayout的子視圖?
- 28. MySQL數據透視表中的列在他們自己的行中
- 29. 多個listViews與他們自己的標題坐落在一個視圖?
- 30. 如何在他們自己的中心周圍旋轉子視圖?
沒有內存問題,但它可能會導致難以使用或難以維護的代碼。收集視圖需要在某個時刻與其他對象進行協調,並且不需要代理將會很困難。 –