В моем приложении я использую PreferenceManager, полностью созданный с нуля.
Затем я открываю preferencePage:
PreferenceDialog dialog=new PreferenceDialog(parentShell, manager);
dialog.create();
dialog.open();
У меня 2 проблемы с этим подходом:
1) Я не могу поддерживать STATIC MANAGER в течение жизненного цикла приложения .Мне нужно создавать Менеджер каждый раз, когда я создаю диалог, иначе даже дерево не создается.Создание NEW Manager - это решение ...
2) PreferenceDialog как-то "похоже, знает о последнем диалоге" !Последняя страница, открытая в последнем диалоговом окне, известна более свежему диалоговому окну еще до того, как мы откроем эту страницу.Это происходит только с последней открытой страницей, остальные полностью создаются на лету!
Я знаю, что когда я использую настройки ECLIPSE, диалог, кажется, «кэширует» все открытые страницы,так что во второй раз они готовы показать ...
Но я заинтригован, потому что я создаю NEW PreferenceManager и PreferenceDialog !!!