我需要項目中的公共屬性,以便我可以使用或共享應用程序。 我已經嘗試了許多解決方案,但沒有工作。 我認爲這會使許多事情變得簡單和可重用。如何在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. 如何在幾個Maven項目中共享公共屬性?
- 4. 如何在VB.NET中設置公共屬性的可見性
- 5. MSI公共屬性overriden
- 6. 公共屬性定義
- 7. TypeScript Setter的公共屬性
- 8. 設置公共類屬性
- 9. BLToolkit:公共只讀屬性
- 10. 如何基於模型屬性創建不同的公共活動? (軌道3)
- 11. 如何使用下拉列表選項創建公共字符串屬性?
- 12. 如何將公共屬性綁定到WPF TextBox.Text屬性
- 13. 如何創建公共方法?
- 14. 如何在屬性數組中找到公共值
- 15. 如何在asp.net mvc的actioninvoke中使用公共屬性?
- 16. 如何在xaml中數據綁定公共屬性
- 17. 如何在CruiseControl.Net中創建屬性
- 18. 如何在Weka中創建屬性
- 19. 在WPF中創建公共DataGridTemplateColumn
- 20. 擁有C++類中的公共屬性
- 21. JavaScript中的原型/類/公共屬性
- 22. 如何選擇頂點共享公共屬性的邊?
- 23. 公共屬性和不變性
- 24. 如何在ASP.NET中創建WebControl中的公共屬性綁定到表單的輸入元素?
- 25. 如何創建屬性?
- 26. 如何創建maven屬性
- 27. 如何在php中爲其他網站創建公共表單?
- 28. 如何在Ubuntu中創建一個公共HTML文件夾?
- 29. 如何在服務中創建公共方法
- 30. 如何在ES6課程中創建「公共靜態字段」?
正是我在找的東西。謝了哥們。 –