我希望當用戶按下android的鍵盤上的後退按鈕時,活動將關閉(並且預覽活動將顯示),除此之外,我希望應用程序做另一件事。
當我試圖按照說明在這裏: is there a default back key(on device) listener in android?當我按下後退按鈕時,活動關閉並再次打開。當我再次按下後退按鈕時,活動就會關閉,預覽活動將會打開。
有人知道爲什麼嗎?有人對此有另一個想法嗎?如何爲後退鍵設置新的監聽器?
這是一些我試過代碼: 方案一:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK){
//Show the dialog and get the response
ArrayList<User> lstChosenContacts = new ArrayList<User>();
for(int i = 0; i < this.lstContacts.size(); i++) {
if(this.lstContacts.get(i).getIsChecked()) {
lstChosenContacts.add(this.lstContacts.get(i).getUserContact());
}
}
Intent data = new Intent();
data.putExtra("lstChosenContacts", lstChosenContacts);
setResult(RESULT_OK,data);
}
return super.onKeyDown(keyCode, event);
}
選項2:
@Override
public void onBackPressed() {
ArrayList<User> lstChosenContacts = new ArrayList<User>();
for(int i = 0; i < this.lstContacts.size(); i++) {
if(this.lstContacts.get(i).getIsChecked()) {
lstChosenContacts.add(this.lstContacts.get(i).getUserContact());
}
}
Intent data = new Intent();
data.putExtra("lstChosenContacts", lstChosenContacts);
setResult(RESULT_OK,data);
super.onBackPressed();
}
謝謝!
如果你能證明你的一些代碼,這將有助於 – 2013-02-21 19:22:28