Страница 1 из 1

События нажатия на кнопки

Добавлено: 27 май 2014, 10:29
nn25
Вобщем, не знаю как правильно выразиться. :D Есть ли возможность вешать команды на события нажатия на стандартные кнопки телефона? Иными словами: на смартфонах есть кнопки назад, свернуть, меню... есть ли обработчики нажатия на эти кнопки?

Re: События нажатия на кнопки

Добавлено: 27 май 2014, 10:47
klblk
nn25 писал(а):Вобщем, не знаю как правильно выразиться. :D Есть ли возможность вешать команды на события нажатия на стандартные кнопки телефона? Иными словами: на смартфонах есть кнопки назад, свернуть, меню... есть ли обработчики нажатия на эти кнопки?
1) Нажатие на кнопку назад обрабатывается в методе onBackPressed()
2) Нажатие на Home (или как вы окрестили её "свернуть") без бубна не получится
3) при открытии меню вроде бы вызывается метод onMenuOpened() (судя по описанию)

Re: События нажатия на кнопки

Добавлено: 27 май 2014, 12:22
yanchumak
для Home, можно использоваться такой велосипед

Код: Выделить всё

boolean mKeyPress;  
boolean mUserLeaveHint;

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    mKeyPress = true;
    return super.onKeyDown(keyCode, event);
} 

@Override
protected void onUserLeaveHint()
{
    super.onUserLeaveHint();
    mUserLeaveHint = true;
}

@Override
protected void onPause()
{
    super.onPause();
    if (!mKeyPress && mUserLeaveHint)
    {
        // HOME_KEY is pressed
    }
}