我需要项目中的公共属性,以便我可以使用或共享应用程序。 我已经尝试了许多解决方案,但没有工作。 我认为这会使许多事情变得简单和可重用。如何在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课程中创建“公共静态字段”?
正是我在找的东西。谢了哥们。 –