У меня есть PreferenceActivity с несколькими фрагментами:
R.xml.preferences: (сокращен для лучшей читаемости):
<?xml version="1.0" encoding="utf-8"?>
<preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:fragment="fragments.Fragment1" android:id="@+id/fragment1" [...] />
    <header android:fragment="fragments.Fragment2" android:id="@+id/fragment2" [...] />
    [...]
</preference-headers>
SettingsActivity
public class SettingsActivity extends PreferenceActivity {
    @Override
    public void onBuildHeaders(List<Header> target) {
        loadHeadersFromResource(R.xml.preferences, target);
    }
}
Это покажет запись списка с fragments.Fragment1, fragments.Fragment2,... если SettingsActivity запущен.
Но теперь я хочу передать Bundle таким образом, что при запуске действия открывается специальный PreferenceFragment:
поэтому я добавил это в SettingsActivity:
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (savedInstanceState != null && savedInstanceState.getBoolean("shortcut")) {
        // directly jump to fragments.Fragment1
    }
}
Я попытался загрузить фрагмент с помощью getFragmentManager().findFragmentById(R.id.fragment1), но это возвращает null. Но даже если бы у меня был правильный экземпляр, я бы не знал, как его вызывать. Кроме того, вызов loadHeadersFromResource(R.xml.preferences_fragment1, target); не работает - это вызовет исключение RuntimeException "XML-документ должен начинаться с тега; foundPreferenceScreen в двоичном XML файле". У меня нет идей, а также поиск по SO и Google не дал никаких релевантных результатов.
Итак, мой вопрос: возможно ли напрямую загружать PreferenceFragment (например, fragments.Fragment1) из метода Activitiy onCreate? Если да, то как?
