Как я могу использовать UpNavigation (кнопка "Назад") для перехода от одной страницы к соответствующей предыдущей странице в затмении Android

Мне нужно перейти с одной страницы на соответствующую предыдущую страницу (в моем приложении более одной предыдущей страницы для текущей страницы) . Как я могу реализовать это с помощью кнопки "Навигация вверх / Назад"

4 ответа

Android документация

Настройте родителя в файле манифеста, а затем в Activity

@Override
public boolean onOptionsItemSelected(MenuItem item)
{
    switch(item.getItemId())
    {
    case android.R.id.home:
        NavUtils.navigateUpFromSameTask(this);
        return true;
    }
    return super.onOptionsItemSelected(item);
}

или вы можете позвонить finish() вместо

NavUtils.navigateUpFromSameTask(this)

Для действий это по умолчанию возврат к предыдущему с помощью кнопки "назад", но без кнопки "вверх". Если хотите, вставьте в Manifest:

android:parentActivityName=".MainActivity"

по фрагментам:

FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.addToBackStack("Tag");
. . .

Вы должны использовать ActionBar или ToolBar.

Затем просто добавьте setDisplayHomeAsUpEnabled (true).

Вы можете указать родительские действия в манифесте

Начиная с Android 4.1 (уровень API 16), вы можете объявить логического родителя для каждого действия, указав атрибут android:parentActivityName в элементе.

Если ваше приложение поддерживает Android 4.0 и ниже, включите в него библиотеку поддержки и добавьте элемент внутри. Затем укажите родительское действие в качестве значения для android.support.PARENT_ACTIVITY, соответствующее атрибуту android:parentActivityName.

Например:

 <application ... >
    ...
    <!-- The main/home activity (it has no parent activity) -->
    <activity
        android:name="com.example.myfirstapp.MainActivity" ...>
        ...
    </activity>
    <!-- A child of the main activity -->
    <activity
        android:name="com.example.myfirstapp.DisplayMessageActivity"
        android:label="@string/title_activity_display_message"
        android:parentActivityName="com.example.myfirstapp.MainActivity" >
        <!-- The meta-data element is needed for versions lower than 4.1 -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.myfirstapp.MainActivity" />
    </activity>
</application>

С родительским действием, объявленным таким образом, вы можете использовать API-интерфейсы NavUtils для синтеза нового обратного стека, определяя, какое действие является подходящим родителем для каждого действия.

Можете сослаться Как реализовать Android ActionBar кнопку назад? для внедрения UpNavigation в вашу деятельность

Я надеюсь, что это помогает.

Другие вопросы по тегам