Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Strelok45
11 / 11 / 0
Регистрация: 18.02.2010
Сообщений: 149
#1

Заблокировать переход к прошлому активити - Программирование Android

19.08.2014, 09:13. Просмотров 1633. Ответов 24
Метки нет (Все метки)

Доброго времени суток.
Возник вопрос: а как можно заблокировать переход к предыдущему активити одного приложения? Вот взять к примеру игровое приложение, в первом активити идет какая-либо картинка и кнопки с вариантами действий одно из которых, к примеру бой. При нажатии на кнопку бой - попадаем во второе активити. И вот сама мысль, что пока бой не закончится, вернуться к предыдущему окну нельзя.
Как я представляю себе данную ситуацию: необходимо сохранить состояние приложения, принудительно уничтожить первое активити, а после окончания боя во втором активити запустить снова это первое активити, передав туда параметры боя. Я только недавно изучаю андроид и еще не знаю всех тонкостей, может есть какой-либо способ лучше и не вызовет ли ошибку мой способ(еще не создавал тестовое приложение)?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 09:13     Заблокировать переход к прошлому активити
Посмотрите здесь:
Переход между активити Android
Переход между активити Android
Android Переход из уведомления в фрагмент активити
Android Переход через фрагмент на активити
Переход на другой активити (список) Android
Android Переход на разные активити при нажатии button в зависимости от checkbox
Android Как правильно организовать переход с одного активити на другое с паролем
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Muhammad97
10 / 10 / 1
Регистрация: 10.11.2013
Сообщений: 238
19.08.2014, 09:45     Заблокировать переход к прошлому активити #2
Java
1
2
3
4
5
@Override 
public void onBackPressed() {  
super.onBackPressed(); 
//Ваш код
}
Pablito
19.08.2014, 10:13
  #3

Не по теме:

Если бы какая-то игра не давала возможности выйти из боя хоть куда - я ее стер бы без колебаний.

Strelok45
11 / 11 / 0
Регистрация: 18.02.2010
Сообщений: 149
19.08.2014, 11:21  [ТС]     Заблокировать переход к прошлому активити #4
Добавлено через 5 минут
Цитата Сообщение от Muhammad97 Посмотреть сообщение
Java
1
2
3
4
5
@Override 
public void onBackPressed() { *
super.onBackPressed(); 
//Ваш код
}
то есть, как я понял в данном методе можно отключить кнопку назад?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 11:41     Заблокировать переход к прошлому активити #5
Удаляете
Java
1
super.onBackPressed();
И кнопка в этой активити не работает.
Strelok45
11 / 11 / 0
Регистрация: 18.02.2010
Сообщений: 149
19.08.2014, 11:41  [ТС]     Заблокировать переход к прошлому активити #6
вопрос решен.
Java
1
2
3
4
@Override 
    public void onBackPressed() {   
        Toast.makeText(this, "Во время боя переход назад не возможен", Toast.LENGTH_SHORT).show();  
    }
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 17:03     Заблокировать переход к прошлому активити #7
Java
1
2
3
4
@Override 
    public void onBackPressed() {   
 
}
то есть такой код в активити отключит кнопку back и она не будет работать в этой активити верно??
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 17:06     Заблокировать переход к прошлому активити #8
Цитата Сообщение от yura91 Посмотреть сообщение
то есть такой код в активити отключит кнопку back и она не будет работать в этой активити верно??
Да, но нажатие фиксироваться будет( будет вибрировать или звук какой издавать, зависит от настроек).
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 17:11     Заблокировать переход к прошлому активити #9
а фиксирование нажатия отключить уже невозможно верно??А как сделать чтобы вертикальное меню в приложении выпадало именно по нажатии клавиши menu на телефоне?можете привести фрагмент кода?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 17:21     Заблокировать переход к прошлому активити #10
Цитата Сообщение от yura91 Посмотреть сообщение
А как сделать чтобы вертикальное меню в приложении выпадало именно по нажатии клавиши menu на телефоне?
Оно итак выпадает при нажатии кнопки меню.
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 17:45     Заблокировать переход к прошлому активити #11
а какой обработчик есть у кнопки Home ?? можно ее как то перехватить можете дать простенький пример??
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 17:47     Заблокировать переход к прошлому активити #12
Цитата Сообщение от yura91 Посмотреть сообщение
а какой обработчик есть у кнопки Home ?? можно ее как то перехватить можете дать простенький пример??
По-моему нельзя.
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 19:19     Заблокировать переход к прошлому активити #13
можете привести фрагмент или дать ссылку на такое меню? просто я смотрел и все время только контекстное меню или из ActionBar Можете дать ссылку на выпадающее вертикальное меню после нажатия кнопки меню?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 19:22     Заблокировать переход к прошлому активити #14
Цитата Сообщение от yura91 Посмотреть сообщение
контекстное меню
и
Цитата Сообщение от yura91 Посмотреть сообщение
выпадающее вертикальное меню
Можете описать подробнее? Что подразумевается под этими понятиями?

Добавлено через 28 секунд
Желательно со скриншотами.
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 19:41     Заблокировать переход к прошлому активити #15
ну допустим я нажимаю кнопку меню на телефоне в своем приложении и у меня должно появлятся меню из трех пунктов которые идут друг за другом вертикально вверх как это сделать? как это сделать??
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 21:06     Заблокировать переход к прошлому активити #16
В папке res/menu есть xml файл с названием вашей активити(если нет создайте). Там пишете что-то подобное
XML
1
2
3
4
5
6
7
8
9
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="vdgb_soft_mobileapps.com.directorsmonitor.activities.ActivityMain">
    <item
        android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100"
        android:showAsAction="never" />
</menu>
где
XML
1
2
3
4
5
<item
        android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100"
        android:showAsAction="never" />
Это пункт меню. Действие при нажатии на пункт меню назначается в onOptionsItemSelected()
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 21:47     Заблокировать переход к прошлому активити #17
Java
1
2
3
4
 public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.mymenu, menu);
    return super.onCreateOptionsMenu(menu);
  }
эту функцию надо добавлять?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 21:49     Заблокировать переход к прошлому активити #18
Цитата Сообщение от yura91 Посмотреть сообщение
эту функцию надо добавлять?
Да.
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
19.08.2014, 21:51     Заблокировать переход к прошлому активити #19
просто с ней получается выпадающее меню которое находится в ActionBar е а без нее эмулятор запускаю че то пустое активити ничего не происходит а мне надо чтоб по нажатию кнопки меню появлялось это меню или на эмуляторе просто нет кнопки меню??
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.08.2014, 21:52     Заблокировать переход к прошлому активити
Еще ссылки по теме:
Android Активити
Android Вызов активити
Блокировка активити Android
Android Пересоздание активити
Загрузка активити Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
19.08.2014, 21:52     Заблокировать переход к прошлому активити #20
Ну дак это и есть меню на ActionBar'e
Yandex
Объявления
19.08.2014, 21:52     Заблокировать переход к прошлому активити
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru