Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 100, средняя оценка - 4.85
nnnikotinnn995
5 / 5 / 4
Регистрация: 07.07.2011
Сообщений: 382
#1

Не работает кнопка "Home" - Программирование Android

19.06.2014, 15:31. Просмотров 16427. Ответов 7
Метки нет (Все метки)

Здравствуйте. Аппаратные кнопки можно обрабатывать через KeyEvent например так
http://www.cyberforum.ru/android-dev/thread833507.html
Java
1
2
3
4
5
6
7
8
     @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
         if(keyCode==KeyEvent.KEYCODE_BACK)BTNback(); 
if (keyCode == KeyEvent.KEYCODE_MENU)BTNmenu();
if (keyCode == KeyEvent.KEYCODE_HOME)BTNhome(); //     не работает!!!!!!!!!!!!!!!!!!!!!!!!!!
return true;
       // return super.onKeyDown(keyCode, event);
    }
Все кнопки работают кроме KeyEvent.KEYCODE_HOME (приложение просто закрывается, метод BTNhome(); не выполняется. Подскажите пожалуйста,как можно обработать кнопку home и в возможно ли это вообще?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2014, 15:31
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не работает кнопка "Home" (Программирование Android):

Рестарт активности по нажатию на кнопку "home"
Всем привет! У меня возникла такая проблема, запускаешь приложение, затем...

Кнопка "Стереть данные", как от нее защититься?
В настройках приложения есть кнопка "Стереть данные", она удаляет все данные (в...

Кнопка "домой", смена ориентации и прочее :)
Добрый вечер уважаемые. не могу решить вот такую проблему: Сделал пример...

Свой Launcher. Срабатывает кнопка "назад"
Здравствуйте! -Пишу свой простенький Laucher(во многом опирался на этот...

Кнопка "Показать на карте" и MapActivity
Всем привет, возник такой вопрос. У меня есть список магазинов в RecyclerView...

7
Pablito
2645 / 2127 / 726
Регистрация: 12.05.2014
Сообщений: 7,436
Завершенные тесты: 1
19.06.2014, 15:42 #2
может оно закрывается из за ошибки в методе BTNhome() ?
а что пишет в консоли?
0
nnnikotinnn995
5 / 5 / 4
Регистрация: 07.07.2011
Сообщений: 382
19.06.2014, 16:15  [ТС] #3
Цитата Сообщение от Паблито Посмотреть сообщение
может оно закрывается из за ошибки в методе BTNhome() ?
а что пишет в консоли?
еще раз проверил - заменил KeyEvent.KEYCODE_HOME на KeyEvent.KEYCODE_MENU - все работает с кнопкой меню, а скнопкой хоум - нет. Слышал мельком что обычные приложения не имеют права перехватывать нажатия кнопки HOME, это так? Может надо что то изменить в методах onPause();onDestroy();..?

Добавлено через 6 минут
в консоли не чего не пишет.
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
19.06.2014, 17:12 #4
Цитата Сообщение от nnnikotinnn995 Посмотреть сообщение
Все кнопки работают кроме KeyEvent.KEYCODE_HOME
А Вам зачем??? (У меня где-то было - могу поискать). Если хотите заблокировать системную кнопку назначив свой обработчик - это (проверенно) не поможет! Если просто нужно перед срабатыванием что-нибудь сделать - поищу! (жду ответа)
0
nnnikotinnn995
5 / 5 / 4
Регистрация: 07.07.2011
Сообщений: 382
19.06.2014, 20:40  [ТС] #5
Цитата Сообщение от Tester64 Посмотреть сообщение
А Вам зачем???
Я хочу мотивировать пользователей ставить оценки, чтобы перед закрытием программы всплывало окно с предложением поставить оценку приложению.
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
19.06.2014, 21:24 #6
Цитата Сообщение от nnnikotinnn995 Посмотреть сообщение
перед закрытием программы всплывало окно
Не уверен что это просто! Боюсь что ХОУМ скрывает ВСЕ программы и окно просто не всплывет... Разве что научитесь создавать окно из сервиса без активити! Или запустите окно через таймер...

Попробуйте добавить это (кажется именно так у меня раньше работало):
Java
1
2
3
4
5
    @Override
    protected void onUserLeaveHint() {
       super.onUserLeaveHint();
        Log.i("asdf", "ПОЙМАЛИ HOME");
    }
0
nnnikotinnn995
5 / 5 / 4
Регистрация: 07.07.2011
Сообщений: 382
20.06.2014, 10:22  [ТС] #7
Не получилось, да ладно. Честно говоря я не видел таких игр где перед закрытием всплывает окно. Вы случайно их не встречали?
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
20.06.2014, 12:24 #8
Цитата Сообщение от nnnikotinnn995 Посмотреть сообщение
Вы случайно их не встречали
при нажатии HOME - Нет! при выходе кнопкой бэк или нарисованной - часто!
HOME еще и экстренная кнопка - Вы в игре и тут нужно СРОЧНО позвонить... Пробиваться через меню, давать программе перед выходом сохраниться - долго! А так - свернули и уже на рабочем столе. Причем не вышли - а только поставили на паузу - можно ее вернуться к тому-же уровню
0
20.06.2014, 12:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2014, 12:24
Привет! Вот еще темы с решениями:

Кнопка "Back" для приложения
у меня есть несколько форм и мне необходима кнопка которая будет возвращать...

Системная кнопка "Назад"
как научить программу реагировать на нажатие этой самой кнопки?

Таймер. Кнопка "Пауза"
Вобщем, решил попробовать сделать таймер, нашел статью, вроде все получилось,...

Работа с БД, связывание таблиц "фильмы", "жанры", "режиссеры"
Ребят, всем привет! накидайте какие-нить идеи по реализации ситуация такая...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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