Я разрабатываю приложение, которое является своего рода читателем и менеджером статей, а также статей, доступных на разных языках.
Таким образом, когда пользователь читает определенную статью на русском языке, есть кнопка для отображения этой же статьи на английском и наоборот.
Для этого я начинаю новое занятие.
Теперь у меня есть то, что, если пользователь нажимает кнопку «перевести» одной и той же статьи несколько раз, будет куча повторяющихся действий.
Что мне нужно сделать, так это то, что когда пользователь сначала «переводит» русскую статью на английский, а затем нажимает кнопку «перевести» в английской статье, приложение возвращает его к существующему действию, отображающему русскую статью, и не запускает новое действие. Вот код, который не делает то, что мне нужно, чтобы проиллюстрировать мои попытки.
intent.putExtra("BookID", strBookID );
intent.putExtra("ChapterNum", mCurrChapterNum );
intent.putExtra("TextNum", mCurrTextNum );
try{
if (Central.LastBookID.equals(""))
{ //remember current article id
Central.LastBookID=strBookID;
Central.LastChapter=mCurrChapterNum;
Central.LastText=mCurrTextNum;
}
else
{
if (Central.LastChapter.equals(mCurrChapterNum) &&
Central.LastText.equals(mCurrTextNum) )
intent.addFlags(Intent. FLAG_ACTIVITY_REORDER_TO_FRONT);
}
startActivity(intent);
Пожалуйста, дайте мне несколько советов, может быть, было бы лучше реализовать это по-другому?
Из того, что мне удалось прочитать, Android не имеет никаких «идентификаторов действий», поэтому, если у меня в стеке есть 2 действия одного и того же класса «A», но с разными параметрами, такими как (A1 A2), я мог бы сказать системе принести перейти к деятельности A1 и сделать это (A2 A1)