кнопка возврата из иерархической настройки - PullRequest
0 голосов
/ 03 августа 2020

У меня есть иерархическая деятельность по настройке, которая содержит разные фрагменты настроек. Я хотел бы, чтобы кнопка «Назад» на верхней панели возвращалась к предыдущему меню настроек И возвращалась к домашнему действию при нажатии из меню настроек root.

Мне удается выполнить только одно поведение или другой, но не оба.

Если я использую:

<activity
    android:name=".SettingsActivity"
    android:label="@string/title_activity_settings"
    android:parentActivityName=".MainActivity">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value="com.demo.app.MainActivity" />
</activity>

Он всегда возвращается на мою домашнюю страницу, а не на предыдущий экран настроек.

1 Ответ

0 голосов
/ 03 августа 2020

После некоторого исследования я могу справиться с этим вот так в моем SettingsActivity:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId())
    {
        case android.R.id.home:
            if(this.getTitle().equals(R.string.settings_header)){ // here put the title of the root
                NavUtils.navigateUpFromSameTask(this);
                return true;
            }
    }
    return super.onOptionsItemSelected(item);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...