Как я могу использовать UpNavigation (кнопка "Назад") для перехода от одной страницы к соответствующей предыдущей странице в затмении Android
Мне нужно перейти с одной страницы на соответствующую предыдущую страницу (в моем приложении более одной предыдущей страницы для текущей страницы) . Как я могу реализовать это с помощью кнопки "Навигация вверх / Назад"
4 ответа
Настройте родителя в файле манифеста, а затем в 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 в вашу деятельность
Я надеюсь, что это помогает.