我目前被困在當前處於從活動A調用的活動B中的情況中。所以我想要的是當活動B中出現某種情況時,將活動A從堆棧中移除以使其不會當用戶按下後退按鈕時出現。刪除所有活動不是一種選擇,因爲在A之前還有其他活動,我不想銷燬。我特別需要銷燬活動A。如何在android中破壞以前的活動?
回答
當您開始活動B時,只需完成活動A.
是這樣的:
startActivty(intent);
this.finish();
this
是指當前活動(活動A)和intent
具有意圖以打開活動B.
編輯:爲了除去ACTIV
然後在活動BstartActivityForResult(intent); // Starting Activity B.
:
onBackPressed() {
setResult(...); // Set result as RESULT_OK etc based on condition. You can also send some data.
}
在活動一再說:只在一定條件下,兩者均一個
onActivityResult(...) {
if (...) // check the condition value from the result
finish();
}
我只需要在活動B中滿足某些條件時刪除活動A.否則,活動A需要在疊加。 – RamManiChimuriya
哦,抱歉沒有看到這個問題。你可以簡單地攔截後按(onBackPressed),然後殺掉以前的活動。 將Activity B作爲startActivityForResult啓動,然後onBackPress將數據發送回可以在'onActivityResult'中攔截的Activity A - 在那裏您可以簡單地完成()活動A(如果需要)。 – kushpf
@Ibrahim不,它只會清除活動A,因爲finish()僅用於此目的。 – kushpf
你可以,如果你不故意添加標誌也,不想讓你的活動保持備用,
Intent intent= new Intent(...);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
在活動A
public class MainActivity extends AppCompatActivity {
public static Activity a;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
a=this;
}
......
}
在活動B
public class SecondActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second_activity);
//Finish Activity here, like on button click
btn= (Button) view.findViewById(R.id.close);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MainActivity.a.finish(); //To finish MainActivity
}
});
}
}
時啓動活動B從活動一剛使用結束()
Intent intent=new Intent(A.this,B.class); startActivty(intent); this.finish();
- 1. Android TabHost破壞活動
- 2. Android FragmentTransaction commit() - 活動已被破壞
- 3. IllegalStateException活動已被破壞錯誤android
- 4. 如何銷燬Android活動被破壞時的本機進程
- 5. 方向變化破壞了在android活動中的ftp上傳?
- 6. 活動不破壞完全
- 7. 活動已被破壞FragmentTransaction.commit()
- 8. onBackPressed - 避免破壞活動
- 9. java.lang.IllegalStateException:活動已被破壞
- 10. 空白活動破壞
- 11. 活動不被破壞
- 12. ANDROID - 活動不會破壞主要活動
- 13. Android,旋轉設備時如何不破壞活動?
- 14. Android - 如何恢復以前的活動?
- 15. 在活動被破壞後運行Bindservice
- 16. 活動已被破壞在fragmenttransaction.commit
- 17. 在不破壞活動的情況下切換活動
- 18. 移動到android中的活動組中的以前的活動
- 19. 呼叫活動的方法破壞
- 20. 使用片段破壞的活動
- 21. 開始由AdMob破壞的新活動?
- 22. 拍照時被破壞的活動
- 23. 如何在Android中查找當前活動的最新活動?
- 24. 如何在Android中禁用以前的活動
- 25. 如何在android中存儲以前的活動值?
- 26. 爲什麼Android活動在旋轉時被破壞?
- 27. ANDROID:活動在睡眠模式下被破壞
- 28. 如何在活動破壞視圖時刪除withEndAction runnable?
- 29. 破壞前驗證
- 30. 添加片段破壞活動
您可以在回調完成活動「活動A的onActivityResult「。 –