[英]Global method in Android App?
我是Android的新手,我需要我的應用隨時監聽某個特定的按鍵。 我設法通過以下代碼使它在每個活動中都能正常工作:
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.KEYCODE_F) {
Log.d("Test","YOU PRESSED THE F KEY");
startActivity(new Intent(getApplicationContext(), Activity2.class));
return true;
}
return super.dispatchKeyEvent(e);
};
但是,我試圖找出是否可以在代碼中的某個位置使用此方法一次? (而不是在每個單獨的活動中都有這段代碼)
創建一個新的抽象活動,您所有的活動都可以擴展。
public abstract class BaseActivity extends Activity {
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.KEYCODE_F) {
Log.d("Test","YOU PRESSED THE F KEY");
startActivity(new Intent(getApplicationContext(), Activity2.class));
return true;
}
return super.dispatchKeyEvent(e);
}
}
您可以定義一個抽象基類,該基類可以擴展Activity並像您所做的那樣覆蓋dispatchKeyEvent
,然后使該類的所有活動成為子類。
也許您想閱讀本教程 。
是的,您可以先定義一個抽象父活動來保存此方法,然后再從該活動繼承,以實現此目的
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.