java - BooleanFieldEditor 不从 PreferenceStore 加载值

标签 java eclipse-plugin eclipse-rcp

对于 Eclipse-RCP-Plugin 中自己的 PreferencePage,我使用 BooleanFieldEditor。它的值保存在PreferenceStore中(确认保存)。 但再次打开 PreferencePage 后,编辑器始终设置为“false”。

public class PreferencePage extends FieldEditorPreferencePage implements
IWorkbenchPreferencePage {

[...]
protected void createFieldEditors() {
subversionSupportBooleanFieldEditor = new BooleanFieldEditor
    (PreferenceConstants.FIELD_SUBVERSION_SUPPORT, "Enable Subversion support", BooleanFieldEditor.DEFAULT, getFieldEditorParent());
subversionSupportBooleanFieldEditor.setPreferenceStore(Activator.getDefault().getPreferenceStore());
subversionSupportBooleanFieldEditor.load();
[...]}

缺少什么?

最佳答案

您需要覆盖 doGetPreferenceStore方法PreferencePage并返回字段编辑器应使用的首选项存储。

  @Override
  protected IPreferenceStore doGetPreferenceStore() {
    return Activator.getDefault().getPreferenceStore();
  }

initialize方法FieldEditorPreferencePage将此处返回的值分配给每个字段编辑器。如果您不覆盖 doGetPreferenceStore container的偏好存储已被采取。

关于java - BooleanFieldEditor 不从 PreferenceStore 加载值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27122332/

相关文章:

java - Android 确保 HTTP 响应到达

java - Eclipse 说 "Update Android Developer Toolkit"

java - 在 Eclipse 插件运行时询问用户 "object"

eclipse - 如何在 Eclipse RCP 中查找孤立插件?

java - 将 SWT Widget 添加到 Eclipse 插件 View 中

java - 为什么 @ApplicationScoped bean 在我的 CDI 扩展的 BeforeShutdown 阶段有一个新实例?

java - 没有名为 EntityManager 的持久性提供程序

java - 离开 SettingsActivity 时应用强制关闭

java - Java 代码的 Eclipse 命令行格式化

java - 如何以编程方式删除 Eclipse 安全存储设置