问题标签 [userdefaults]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
287 浏览

ios - UserDefaults - not saving consistently when using Xcode Simulator

I am learning iOS development and I have stumbled across an issue where UserDefaults doesn't seem to be consistently saving correctly.

When I open the app, it checks to see if a UserDefaults property exists, if so, it does something. Now, if I save the UserDefaults property and 'synchronize', then press stop on the simulator and then press 'play' again to re-open it, sometimes the UserDefaults value is nil.

I have yet to test this on a physical device, but has anyone had the same issue - if so, is it expected?

0 投票
1 回答
62 浏览

ios - Easy way to remove UserDefaults (without coding)

I've seen that there are several ways to remove the UserDefaults via code.

I've deleted a testing app from my phone but the UserDefault values are still there.

Is there an simple way of removing the UserDefaults instead of implementing a function to delete them?

0 投票
1 回答
49 浏览

swift - 自定义类 Unarchive 在 Cocoa Swift 中为零

我正在尝试在我的 macOS 应用程序中将自定义类保存并检索到 UserDefaults。我的newData为零

0 投票
1 回答
83 浏览

ios - 值始终为零

我有一个文本字段,将在图表中显示十个字符串。如果文本字段 1 有文本,那么它将显示在文本字段 2 上,如果文本字段 2 有文本,那么它将转到文本字段 3,依此类推。但由于某种原因,它总是在文本字段 1 中显示字符串。我附上了我的代码,这可能是一个愚蠢的错误。

0 投票
1 回答
157 浏览

xcode - Swift 用户默认值 (2017)

我是 Xcode 的新手,目前正在制作一个应用程序,你有一定数量的“香蕉/钱”,你可以在其中掷硬币,你要么赢 2 倍,要么输掉赌注。(仅供体验)

我的游戏完全正常,我现在刚刚决定,我想在应用程序关闭和启动时保存货币;使用 NSUserDefaults。

我已经设置了我的 NSUserDefaults,它正在工作。它显示的是我上次关闭应用程序时的货币,我只能在 0 和我的货币之间下注。- 这太棒了!

然而,即使我的全部货币正在显示,并且我可以下注我所有的总货币,这一切背后的数学仍然在苦苦挣扎。应用程序关闭后,它会将整数放回 0,因为这是我在创建变量时在 viewDidLoad 上方声明的内容。

没看懂?假设我有 30 根香蕉,我将赌 30 根香蕉。如果我赢了,我总共有 30 根香蕉,如果我输了,我将有 -30 根香蕉。(整数由于某种原因设置为 0)

我需要一种将整数设置为我上次保存的方法;“货币保存”。- 我需要一种方法来检测是否是第一次打开应用程序;如果是,您必须从常量整数/货币开始。

代码:

我所有的变量都是整数。

betVar; the variable / value, that you're betting

currencyVar; the variable / value, that you're having. (Your cash)

currencySave; the name I've saved my integer into

以上 viewDidLoad

viewDidLoad

滑块,您可以在其中选择下注金额

赢得赌注时的数学(当你点击“赌注”时,它会从你那里拿走钱,这意味着,如果你输了,什么都不会发生。)

我保存整数的方法

0 投票
2 回答
4308 浏览

ios - 从其他视图控制器访问 Swift 中的 UserDefaults

在我的应用程序中,我使用 UserDefaults 来存储用户的登录状态(无论他们是否登录)和他们的用户名。它工作正常,当我登录时,关闭应用程序,然后再次打开它,我的应用程序跳过登录页面并识别出我已经登录。虽然,我现在正在尝试将注销按钮安装到单独的 viewController。单击时,此注销按钮需要 1.) 将 UserDefaults.loginStatus 重置为“False” 2.) 将 UserDefaults.username 重置为 nil 3.) 对登录页面执行 segue。

这是我的 ViewController.swift 文件中的相关代码。这是第一个控制 loginPage 的 viewController。

下面是我在 SecondViewController.swift 中的代码,尤其是注销功能。

运行注销功能时,segue 执行良好,但默认值不会更改。有人可以解释为什么以及我能做些什么来解决这个问题吗?

**旁注,我实际上不会将默认值设置为“false”和“false”。在我调试此问题时,这只是暂时的。

0 投票
1 回答
15460 浏览

swift3 - 无法在 UserDefaults 中设置非属性列表对象

我有一个简单的函数,其中我将一个对象保存到用户默认值,以便稍后重新加载它,它看起来像这样:

我得到错误:

2017-03-13 21:15:33.124271 Castle[5405:5208658] [User Defaults] 尝试设置非属性列表对象名称:'hero' 纹理:['hero1.ico' (32 x 32)] 位置:{0, 0} scale:{1.00, 1.00} size:{32, 32} anchor:{0.5, 0.5} rotation:0.00 作为键 heroObjectKey 的 NSUserDefaults/CFPreferences 值

这是因为我无法保存自己的自定义对象,还是它不喜欢对象中的某些属性值?

注意:有一个非常相似的问题部分解决了我的问题,但是由于 Swift3 和他们使用的任何东西之间的差异,那里接受的答案对我不起作用。所以我会在这里给出答案。

0 投票
2 回答
860 浏览

swift - 如何在 Swift 3 中保存 UITableViewCell 附件复选标记的状态

我有一个表格视图,我希望用户从表格视图中只选择一个项目,然后我想在单元格中添加一个复选标记。同时,我也想让其他单元格上的勾号就这样消失了。用户一次只能选择一个。然后我想保存数据(最好使用UserDefaults)。我怎么做?

0 投票
0 回答
228 浏览

sprite-kit - iOS 10.3 更新后 userDefaults 重置/擦除

在我的 SpriteKit 游戏中,我使用 UserDefaults 来保存高分等。工作正常,一切顺利。

但是 - 我刚刚将一些设备更新到 iOS 10.3(发行版,不是测试版),我注意到以前保存的数据被擦除了......

新数据被保留 - 例如 - 记录了新的高分,因此一旦创建 userDefaults 仍在设置..但我没想到 10.3 会擦除旧数据?

我想这与新的 APFS 有关吗?

我还没有在任何其他应用程序中测试过这个 - 有没有其他人看到这个问题?知道如何防止将来发生这种情况吗?

谢谢。

设置默认值的示例:(Swift 3)

0 投票
1 回答
30 浏览

swift - 对使用 UserDefaults 制作管理员 ID 感到困惑

我使用 UserDefaults 来制作登录屏幕。我的问题是我需要一个管理员让苹果的审查员可以直接登录我的应用程序而无需再次注册。接下来我该怎么办?请帮助我!谢谢!

这是我的代码: