使用 SharedDefault 共享图像 Alpha 值
Share Image Alpha value with SharedDefault
在我的应用程序中,我根据上下文设置了 3 个图像的 alpha 值。我想使用 sharedDefault 将该 alpha 值传递给苹果手表。然后给手表上对应的图片设置相同的alpha值。我知道如何很好地传递字符串但不传递值。任何帮助,将不胜感激。这是我在主应用程序上的代码:
if grandTotalPax <= 90 {
let sharedDefaults = NSUserDefaults(suiteName:"group.birkyboy.CrewStaffingTodayExtension")
sharedDefaults!.setDouble(1, forKey: "totalfull")
sharedDefaults!.setDouble(0.3, forKey: "totalmoyen")
sharedDefaults!.setDouble(0.3, forKey: "totalempty")
totalFull.alpha = 1
totalMoyen.alpha = 0.2
totalEmpty.alpha = 0.2
}
我不确定这是否回答了你的问题,因为这似乎不清楚,因为你正在使用正确的方法来设置值。
如果您想在 iOS 设备和 Apple Watch 之间共享值,非常简单。
首先,我假设您已经为两个目标(设备和手表)定义了 AppGroups
。
其次,你需要NSUserDefaults
这样
if let sharedDefaults = NSUserDefaults(suiteName: "group.birkyboy.CrewStaffingTodayExtension") {
// Do your stuffs here
}
在 if
块中,您可以按照与现在相同的方式定义您的值。
sharedDefaults.setFloat(0.3, "totalempty") // Look I'm using float because is less expensive than double and fits the range alpha values you need.
之后,您应该像这样保存您的 NSUserDefaults
:
if sharedDefaults.synchronize() {
// syncrhonized succeffully
}
如果不执行此操作,您共享的默认设置将永远不会被保存。
在手表上,你可以像这样轻松获取值:
if let sharedDefaults = NSUserDefaults(suiteName: "group.birkyboy.CrewStaffingTodayExtension") {
let alpha: Float = sharedDefaults.floatForKey("totalempty") // if this key does not exist, this will return 0.
}
希望对您有所帮助
在我的应用程序中,我根据上下文设置了 3 个图像的 alpha 值。我想使用 sharedDefault 将该 alpha 值传递给苹果手表。然后给手表上对应的图片设置相同的alpha值。我知道如何很好地传递字符串但不传递值。任何帮助,将不胜感激。这是我在主应用程序上的代码:
if grandTotalPax <= 90 {
let sharedDefaults = NSUserDefaults(suiteName:"group.birkyboy.CrewStaffingTodayExtension")
sharedDefaults!.setDouble(1, forKey: "totalfull")
sharedDefaults!.setDouble(0.3, forKey: "totalmoyen")
sharedDefaults!.setDouble(0.3, forKey: "totalempty")
totalFull.alpha = 1
totalMoyen.alpha = 0.2
totalEmpty.alpha = 0.2
}
我不确定这是否回答了你的问题,因为这似乎不清楚,因为你正在使用正确的方法来设置值。
如果您想在 iOS 设备和 Apple Watch 之间共享值,非常简单。
首先,我假设您已经为两个目标(设备和手表)定义了 AppGroups
。
其次,你需要NSUserDefaults
这样
if let sharedDefaults = NSUserDefaults(suiteName: "group.birkyboy.CrewStaffingTodayExtension") {
// Do your stuffs here
}
在 if
块中,您可以按照与现在相同的方式定义您的值。
sharedDefaults.setFloat(0.3, "totalempty") // Look I'm using float because is less expensive than double and fits the range alpha values you need.
之后,您应该像这样保存您的 NSUserDefaults
:
if sharedDefaults.synchronize() {
// syncrhonized succeffully
}
如果不执行此操作,您共享的默认设置将永远不会被保存。
在手表上,你可以像这样轻松获取值:
if let sharedDefaults = NSUserDefaults(suiteName: "group.birkyboy.CrewStaffingTodayExtension") {
let alpha: Float = sharedDefaults.floatForKey("totalempty") // if this key does not exist, this will return 0.
}
希望对您有所帮助