- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用 Microsoft 的 Xamarin 开发的 iOS 应用程序,这就是为什么其中一些代码看起来可能有所不同的原因。无论如何,这就是我要做的:
在我的应用程序中,我有一组默认用户设置,无论如何都需要在应用程序的每个实例中使用。这是使用此方法设置的:
public static void SetDefaults()
{
var keys = new object[]
{
"LastNotificationTime",
"LastSyncTime",
"LunchStartTime",
"LunchEndTime",
"OnLunchBreak",
"PunchedIn",
"PunchTime",
"ShowDetailPane",
"NotifyEmergency",
"RunAtBoot",
"RowsPerPage",
"SyncInterval"
};
var values = new object[]
{
"",
"",
"",
"",
false,
false,
"",
true,
true,
false,
5,
60
};
var defaults = NSDictionary.FromObjectsAndKeys(values, keys);
NSUserDefaults.StandardUserDefaults.RegisterDefaults(defaults);
NSUserDefaults.StandardUserDefaults.Synchronize();
}
这在我的应用程序的初始运行期间非常有效。我将从头开始在我的设备上部署,运行应用程序,然后停止。然后我将重新部署已安装的应用程序。我不想每次都清除默认值并设置真正的默认值,所以我在这样做之前执行此检查(在此示例中,Settings.GetPreferences()
返回 NSUserDefaults .StandardUserDefaults
对象):
if( Settings.GetPreferences().IntForKey("RowsPerPage") == 0 ||
Settings.GetPreferences().IntForKey("RowsPerPage") == null )
{
Settings.SetDefaults();
}
正如您在上面看到的,RowsPerPage 最初设置为 5。我希望在后续初始安装后的每次运行中,该值都保持为 5。或者用户选择的任何值。
但是,上面的检查结果总是正确的,并且调用了我的 SetDefaults()
方法,清除了用户在上次运行期间对其默认值所做的任何更改。有谁知道为什么会这样?设置这些默认值时我做错了什么吗?即使在添加了不推荐的、已弃用的 NSUserDefaults.StandardUserDefaults.Synchronize()
方法调用之后,默认值仍会重置。
最佳答案
你的问题是 RegisterDefaults
没有按照你的想法去做:
The contents of the registration domain are not written to disk; you need to call this method each time your application starts.
如果你想为你的默认设置建立初始值,那么你需要在你的 SetDefaults
方法中为每个单独的 set
操作,而不是使用 注册默认值
关于c# - NSUserDefaults 不保存 StandardUserDefaults 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52729041/
swift 2Xcode 7.3 我尝试存储这个: var someArray = [Class1(id: 1, title: "Titel 2", Something: Class2(somevar
我有一个概念性问题 - 访问 NSUserDefaults 时是否始终必须使用 standardUserDefaults API? 我在我的应用程序中保存了很多设置/标志/NSCoding 信息,用于
一个新手问题——我正在使用 [NSUserDefaults standardUserDefaults] 来存储用户 指定的偏好。在测试我的应用程序时,我看到存储的首选项 如果我在我的 iPhone 上
我使用 [NSUserDefaults standardUserDefaults] 来存储应用程序设置。 我的问题是: 删除应用后这些设置会被删除吗? 应用程序更新后(通过应用商店)? 因为我使用它来
我有两个关于 Apple 的 +[NSUserDefaults standardUserDefaults] 的问题: 1) 该对象是否代表所有应用程序共享的首选项? 2)如果没有,并且它仅对当前应用程
如果我下载了新版本的应用程序,是否会清除存储在NSUserDefaults.standardUserDefaults()中的所有数据?如果我重复安装和删除我的应用程序会怎样? 我从应用程序商店下载了我
我想保存一些用户偏好,但是 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 只返回nil。 iOS-Developp
所以我使用 NSUserDefaults 来存储我的 FBAccessTokenKey 和 FBExpirationDateKey。我正在创建一个单例用户对象: - (id)init { se
我面临着 NSUserDefaults 的一个非常奇怪的行为,问题是 [NSUserDefaults standardUserDefaults] 对象被随机删除! 我的 [NSUserDefaults
我在开发人员门户中将应用程序组添加到我的应用程序 ID,并在我的配置文件中使用该应用程序 ID。我在 Xcode 中的产品标识符设置为该应用程序 ID。 在我的应用委托(delegate)中,我从 d
你们愿意帮帮我吗?我找到了如何保存和检索简单对象以将它们用作应用程序设置。 NSUserDefaults.StandardUserDefaults.SetString("testUser","user
我对 NSUserDefaults 的 standardUserDefaults 有疑问。standardUserDefaults 方法到底做了什么?是在初始化对象吗? 最佳答案 是或否。 NSUse
我希望有某种方法将用户默认值备份为属性列表或 XML,或其他可以通过网络传输的适当文件格式。我怎样才能获得这些的备份,以便我可以将它们发送到网络服务器并将它们检索回设备并将它们读入用户默认数据库? 最
我有一个从 NSUserDefaults.standardUserDefaults() 变成值的变量 var GiftCount = NSUserDefaults.standardUserDefaul
我想检查 NSUserDefaults 是否有 dic 键的值,如果存在则加载数据并保存到 loadedDic 中,或者设置值loadedDic 并保存到 NSUserDefaults(如果没有)。
我正在尝试使用 NSUserDefaults.standardUserDefaults().setObject(, forKey:) 保留数组的应用程序 我正在努力实现以下目标,但由于我是一个新手,所
我有一个使用 Microsoft 的 Xamarin 开发的 iOS 应用程序,这就是为什么其中一些代码看起来可能有所不同的原因。无论如何,这就是我要做的: 在我的应用程序中,我有一组默认用户设置,无
检查 standardUserDefaults 内容的正确方法是什么? 如果我打印出存储在 key 中的内容,我会得到: NSLog(@"logged_in_status : %@", [standa
在 iPhone 上运行应用程序时(例如,当您可以通过另一种方式测试某些 GPS 或相机功能时),我在哪里可以找到并检查 NSUserDefaults 创建的文件以保存 standardUserDef
我正在更改 iPhone 应用程序中的应用程序设置。 奇怪的是,我必须使用 StandardUserDefaults 执行 2 个同步命令,才能使我的更改反射(reflect)在应用设置中。 其次,当
我是一名优秀的程序员,十分优秀!