Вам не нужно реализовывать onBackPressed.Это похоже на то, что несколько экземпляров действия создаются / запускаются, что является ожидаемым поведением по умолчанию при вызове .startActivity (). Проверьте документы Задачи и Back Stack. Вы можете использовать singleTop в качестве режима запуска или установитьIntent.FLAG_ACTIVITY_SINGLE_TOP
о намерении, которое запускает действие.
Intent detailsIntent = new Intent(mContext, DetailsActivity.class);
detailsIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
startActivity(detailsIntent);