簡體   English   中英

Android后退鍵循環焦點,而不是返回上一個活動

[英]Android Back key cycling focus instead of returning to previous activity

我有這個布局

在此處輸入圖片說明

兩個SearchView小部件
一個ListView

當我按下android back鍵時,焦點在過濾器框和搜索框之間循環。
我想回到上一個活動,但是我不能做,因為后退鍵只從一個盒子移到另一個盒子。
如何獲得返回鍵按下事件?

這段代碼甚至都沒有被調用

@Override
public void onBackPressed() {
    setResult(Activity.RESULT_CANCELED);
    super.onBackPressed();   
}

問題肯定出在SearchView小部件及其對焦點/返回鍵的處理上。
我將SearchViews更改為EditTexts
我將QueryTextListeners更改為TextWatchers
和...瞧!

現在,onBackPressed()被調用,活動可以返回到其先前的調用者。

在此處輸入圖片說明

您可以覆蓋活動的onBackPressed()方法來完成您想要對后退鍵進行的任何操作,例如

您可以按返回鍵調用上一個活動...

@override
public void onBackPressed ()
{
  Intent intent = new Intent(CurrentActivity.this, PreviousActivity.class);
  startActivity(intent);
  finish();

} 

我總是在onBackPressed遇到麻煩。 您應該嘗試使用onKeyDownonKeyUp

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
        // do something on back.
        return true;
    }

    return super.onKeyDown(keyCode, event);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM