Мое приложение состоит из одного вида деятельности. Когда я отказываюсь, ничего не происходит, почему это? Я думал, что это убьет приложение. Если я нажму домой, приложение будет указано в фоновом режиме по желанию. Это просто кнопка, которая ничего не делает. Что я мог сделать, чтобы повлиять на это?Android back key ничего не делает?
Я прочитал в документации:
public void onBackPressed()
Вызывается, когда активность обнаружена пресс пользователя из заднего ключа. Реализация по умолчанию просто завершает текущую активность , но вы можете переопределить это, чтобы делать все, что хотите.
Я не переопределил это.
Вот то, что было сказано, перекрывая ключи:
public boolean dispatchKeyEvent(KeyEvent event) {
if (event == null || event.getAction() == KeyEvent.ACTION_UP) {
return false;
}
if(event.getKeyCode() == KeyEvent.KEYCODE_DEL){
mEntry.setOnFocusChangeListener(new OnFocusChangeListener(){
@Override
public void onFocusChange(View v,boolean hasFocus){
/* When focus is lost check that the text field
* has valid values.
*/
if (!hasFocus && !mEntry.getText().toString().trim().equals("")) {
mSession.appendToEmulator(cmdLeft, 0, cmdLeft.length);
mSession.appendToEmulator(cmdErase, 0, cmdErase.length);
Log.d(TAG, "in inner delete");
}
else {mEntry.setText(" ");
}
}
});
Log.d(TAG, "in delete in delete in delete in delete");
try {
sendOverSerial("\b".getBytes("UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return super.dispatchKeyEvent(event);
};
Другой отрывок из OnCreate:
mEntry = (EditText) findViewById(R.id.term_entry);
mEntry.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
/* Ignore enter-key-up events. */
if (event != null && event.getAction() == KeyEvent.ACTION_UP) {
return false;
}
, если мы не видим ваш код, мы не можем найти это;) – bofredo
да, вы должны переопределить его, и если вы находитесь в основной активности, то андроидная кнопка os back сама завершает работу – Shiv
Ну код несколько тысячи строк, мне просто интересно, какие способы вы знаете, что могло повлиять на это? Полагаю, я могу переопределить его и закончить, но он уже должен это делать. – Paul