我需要項目中的公共屬性,以便我可以使用或共享應用程序。 我已經嘗試了許多解決方案,但沒有工作。 我認爲這會使許多事情變得簡單和可重用。如何在swift4中創建公共屬性
-1
A
回答
3
您可以使用擴展 作爲
記錄,你可以改變以前定義的類特性
例如
extension UIColor {
class var customGreen: UIColor {
let darkGreen = 0x008110
return UIColor.rgb(fromHex: darkGreen)
}
}
1
使用iOS設計模式「Singleton」。
它只對一個類使用一個引用,同一個屬性會反映出你在整個應用中使用它的地方。
+2
儘可能避免單身人士。 這裏是一個視頻教程,說明單身人士的問題 - 以及如何解決它們:https://youtu.be/Uf0s3LTaj3k 順便說一句,Singleton是*不* iOS設計模式。這是幾十年前由「四人幫」制定的標準之一。甚至作者認爲辛格爾頓是一件邪惡的事情。現在我們對這個問題有了更好的解決方案,例如依賴注入。 –
1
您可以通過聲明公開的struct
或enum
來創建輕量級的「名稱空間」。然後,只需添加你的static
變量,你就可以安全地分享它。 作爲一個額外的好處,你可以免費獲得線程安全。 (靜態存儲的屬性初始化是線程安全的。)
public enum SharedConstants {
public static var id = "MyID"
public static var hashCode = 12345678
}
順便說一句,擴展,如果你想提高現有類型是巨大的。類型擴展允許您在不修改其原始代碼的情況下向類型添加新功能。 但是,如果您只需要共享共享屬性,則擴展可能不是最佳選擇。
相關問題
- 1. 動態創建公共屬性
- 2. 創建內部類的公共屬性?
- 3. 公共屬性創建動態對象
- 4. 如何在幾個Maven項目中共享公共屬性?
- 5. 如何在VB.NET中設置公共屬性的可見性
- 6. 如何使用IEnumerable公共屬性?
- 7. 公共活動 - 基於某些屬性更改創建活動
- 8. 設置公共類屬性
- 9. Yii2模型公共屬性
- 10. BLToolkit:公共只讀屬性
- 11. TypeScript Setter的公共屬性
- 12. MSI公共屬性overriden
- 13. ASP.NET公共屬性ViewState
- 14. 公共屬性定義
- 15. 如何將公共屬性綁定到WPF TextBox.Text屬性
- 16. 如何使用下拉列表選項創建公共字符串屬性?
- 17. 如何基於模型屬性創建不同的公共活動? (軌道3)
- 18. 如何創建公共方法?
- 19. CodeIgniter:如何創建公共佈局
- 20. 如何在javascript中訪問parent函數的公共屬性?
- 21. 如何在屬性數組中找到公共值
- 22. 如何在xaml中數據綁定公共屬性
- 23. 如何在多ViewModels中綁定公共屬性?
- 24. 如何在JavaScript的公共方法中訪問私有屬性?
- 25. 如何在私有屬性中調用公共方法?
- 26. 如何在asp.net mvc的actioninvoke中使用公共屬性?
- 27. 如何在CruiseControl.Net中創建屬性
- 28. 如何在Weka中創建屬性
- 29. 在WPF中創建公共DataGridTemplateColumn
- 30. 在Play框架中創建公共庫
正是我在找的東西。謝了哥們。 –