В моем приложении у меня есть обычное меню, где я могу выбрать из меню и перейти к другому представлению.Простой ...
private void gotoSettings()
{
Intent settingsIntent = new Intent(this, SettingsActivity.class);
startActivity(settingsIntent);
}
Теперь у меня также есть метод в главном представлении, который обрабатывает броски (пролистывание между представлениями):
Intent intent = new Intent(MainActivity.this.getBaseContext(), CommandActivity.class);
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
return false;
// left to right swipe
if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY)
{
startActivity(intent);
MainActivity.this.overridePendingTransition(R.anim.slideinleft, R.anim.slideoutright);
}
Теперь вот что есть.При запуске приложения, если я нахожусь в основном действии и выбираю настройки, оно работает нормально и переходит к действию Настройки.Но если я перейду к операции «Команда», затем вернусь к основной деятельности, затем снова выберу «Настройки», он вызовет тот же метод, который делает это снова:
private void gotoSettings()
{
Intent settingsIntent = new Intent(this, SettingsActivity.class);
startActivity(settingsIntent);
}
Но теперь он автоматически показывает командуактивность вместо активности настроек.Я даже отлаживал и был свидетелем того, как он прошел вышеупомянутый код и сразу после startActivity (settingsIntent);он не переходит к активности «Настройки», он переходит к активности команды.
Это очень и очень странно, так как Я СКАЗЫВАЮ, чтобы перейти в Настройки, но это не так.Должно быть, это как-то связано с броском, но я этого не вижу ....?