我無法弄清楚如何處理Activity Flow。在Android中攔截返回鍵值
我在我的android應用程序中有2個活動和1個視圖類。
主要活動 - >子活動 - >視圖類(我從主活動類調用子活動,並在子活動中,我實例化視圖類)。
但是當我在View Class中按下按鈕時,它將返回到主活動。
視圖類(後退按鈕按下) - >主要活動
但我希望的行爲是這樣的:視圖類(後退按鈕按下) - >子活動 - >主要活動)。
請指導我該怎麼做。
在此先感謝。
我無法弄清楚如何處理Activity Flow。在Android中攔截返回鍵值
我在我的android應用程序中有2個活動和1個視圖類。
主要活動 - >子活動 - >視圖類(我從主活動類調用子活動,並在子活動中,我實例化視圖類)。
但是當我在View Class中按下按鈕時,它將返回到主活動。
視圖類(後退按鈕按下) - >主要活動
但我希望的行爲是這樣的:視圖類(後退按鈕按下) - >子活動 - >主要活動)。
請指導我該怎麼做。
在此先感謝。
好的,您可以在子活動中聆聽關鍵事件。像這樣:
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK&&your view is not close) {
closeyourview();
return true;// important you can close your view here
}
return super.onKeyDown(keyCode, event);
}
活動有onBackPressed()
回調方法。您可以重寫此操作,但如果您不打算以特殊方式操作,請務必致電super.onBackPressed()
,以便活動最終能夠正常退出。
@Override
public void onBackPressed() {
if (/* ... */) {
// do something special
} else {
super.onBackPressed();
}
}
我不確定View Class是什麼意思。也許你可以使用新的活動來顯示視圖,然後一切都會好的。
查看班級意味着 - > someCustomImageLoad擴展查看{}。當我從我的子活動中調用它時,它覆蓋整個屏幕,用戶可以放大或縮小位圖。 – Hassan
如果它需要整個屏幕,爲什麼不爲此獲得新的活動? –
有多少活動? 2或3? – Karakuri
2活動..主要和次要活動..第三個是視圖類(擴展視圖) – Hassan