我很难找到应用程序从哪里拿起窗口停靠点和位置设置。我从以下目录中删除了相关的plist文件和文件夹:
但是我启动应用程序时会保留旧窗口设置。该应用程序使用 CFPreferencesCopyValue 方法来读取首选项值:
::CFPreferencesCopyValue("Toolbars:MyTools:Application", "kCFPreferencesCurrentApplication", kCFPreferencesCurrentUser, kCFPreferencesCurrentHost);
我对Mac的偏好机制不是很熟悉。有人能解释一下这里会发生什么吗?感谢
答案 0 :(得分:1)
小牛队的NSUserDefaults
(至少)被缓存,不建议手动编辑plist文件。实际文件驻留在容器文件夹中(您可能从沙盒中知道此文件夹)。
但您可以使用命令行实用程序defaults
来编辑,更改或删除首选项。要删除默认值(=重置应用程序的默认值),您可以在终端中运行:
defaults delete com.myapp.* && rm -rf ~/Library/Preferences/com.myapp.*
这取自detail explanations on user defaults and mavericks中显示的博客条目。
答案 1 :(得分:0)
这个问题最近困扰着我,所以我以为我将答案迟到了。
当您在Mac(plist文件)上删除首选项时,请确保清除缓存的首选项,否则Java程序可以继续使用缓存的设置。 您可以:
killall -u cfprefsd
OR
项目2和3.将导致清除缓存,然后在cfprefsd自动重启时重新加载您的首选项。
我希望有帮助。