[英]Android: How to simulate back button
目前,我的活動允許用戶填寫某些數據。 包括微調器等。當用戶點擊下一個系統導航到另一個屏幕時。 當我按下手機上的后退按鈕時,前一個活動已加載並且已填充數據可用。
我的要求要求我在UI中給出一個柔和的“后退”按鈕。 當用戶點擊它時,它會導航回到上一個屏幕,但填充的數據不可用。
有沒有辦法在軟UI按鈕onclick事件上模擬后退按鈕?
Intent back = new Intent(ImagePreviewActivity.this, sendingpage.class);
startActivity(back);
在此先感謝您的時間。
當用戶單擊軟后退按鈕時,您只需調用Activity
finish()
方法。
編輯:讓你的Activity
實現OnClickListener
,然后在代碼中
myBackButton.setOnClickListener(this);
....
public void onClick(View v) {
if(v.getId()==R.id.YourBackButton){
finish();
}
}
EDIT2 :你也可以從你的Activity
調用onBackPressed()
。
如果您使用“活動”來顯示不同的屏幕,則只需基於按鈕單擊完成活動並顯示一些結果,然后您可以返回一些“活動結果”值,然后可以在之前活動的onActivityResult中處理該值。
添加一些偽代碼。 假設你有兩個Activty A和B,你從A - > B然后從B - > A
在活動A中
startActivityforResult(new Intent(A.this, B.class), 1234);
onActivityResult(......) {
if (1234 == requestCode) {
switch (resultCode) {
/* Do your processing here like clear up old values and so on */
}
}
}
在活動B中
onClick() {
if (v == backBtn) {
Intent resultIntent = new Intent();
setResult(Activity.RESULT_OK, resultIntent);
finish();
}
}
這篇文章的所有解決方案都太復雜了。 最簡單的是這篇文章:
這是該帖子的最后一個解決方案:
this.onBackPressed();
要么
getActivity()onBackPressed();
依賴於你所謂的地方。
如前所述,只需完成您的活動:
myButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
在你的軟回按鈕onClick事件寫
Intent _intent = new Intent(PresentActivity.this,PreviousActivity.class);
startActivity(_intent);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.