Imprensa Android novamente para voltar ao sair do programa - a tecla de retorno, os principais eventos menu de substituir

sócio minoritário jogado o jogo sabe que agora quase todo o jogo irá aparecer um lembrete quando você quiser sair, como mostrado abaixo:
Aqui Insert Picture Descrição

Portanto, esta é a forma de alcançá-lo? Vamos dar uma olhada!

A primeira onda de meus renderings
Aqui Insert Picture Descrição

A coisa mais importante é entender a função de realização de idéias, como a função de saída de confirmação jogo, você precisa reescrever os principais eventos de retorno, tecla para voltar ao evento original em um pop-diálogo, e então lidar com dois botões de eventos de clique de diálogo, como cancelada botão diretamente para a caixa de diálogo pop cancelados, determinado a sair do programa, e assim por diante ...

Diretamente no código:

Aqui é Ctrl + O, Atividade reescrita do evento, aqui são reescritas onKeyDown evento, em seguida, usar uma instrução if para retornar aos eventos tecla Menu e eventos-chave que ser reescrito, e, finalmente, deve prestar atenção para return true;impedir a execução do evento depois de reescrever go-definido para retornar para o evento! (Eu escrevi aqui só um setText () simples evento para demonstração)

E o pequeno companheiro certamente acho Substituir eventos tecla HOME, depois Android4.0, para a segurança dos usuários, o Google foi reescrito para PRINCIPAL incidente fez um tratamento seguro e, em seguida, precisam ser reescritos se mais problemas, necessidade de usar o rádio, follow-up vou escrever um evento blogue tecla HOME separado!

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //Android4.0 开始 为了安全,对于HOME事件的改写失效
        if (keyCode==KeyEvent.KEYCODE_BACK){
            /** 这个是再按一次返回的代码示例
            if ((System.currentTimeMillis() - mExitTime) > 2000) {
                Toast.makeText(this, "再按一次返回主页", Toast.LENGTH_SHORT).show();
                mExitTime = System.currentTimeMillis();
            } else {
                finish();
            }*/
            mTxvKeycode.setText("按了返回");
            //对事件进行终止,防止再调用正常的Back事件
            return true;
        }else if (keyCode==KeyEvent.KEYCODE_MENU){
            mTxvKeycode.setText("按了菜单");
            return true;
        }else{
            return super.onKeyDown(keyCode, event);
        }
    }

Obrigado pela leitura!

Publicado 42 artigos originais · ganhou elogios 303 · vê 30000 +

Acho que você gosta

Origin blog.csdn.net/qq_44720366/article/details/105163095
Recomendado
Clasificación