如何完成所有活动,除了第一个活动? [英] how to finish all activities except the first activity?
问题描述
我谷歌,但我就算运行此code以下它没有完成的其他活动。
ButtonClick.setOnClickListener(新OnClickListener(){
@覆盖
公共无效的onClick(视图查看){
。LoginManager.getInstance()CTRL = FALSE;
。UserManager.getInstance()loginControl();
。OrderManager.getInstance()orderCtrl = FALSE;
意向意图=新的意图(OrderComplete.this,
MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(意向);
完();
}
});
}
根据我们的意见讨论
您考虑code是很好!
Q1。为什么它没有完成所有的活动?
答。我觉得所有活动完成
除了活动
谁拥有主题或AysncTask
在后台运行或还没说完呢!
Q2。我怎么能完成他们?
答。确保你的线程就成全了!或你可以尝试超时等
!
其他
传递字符串与你的意图
该附加code
intent.putExtra(finishingallact,是);
在第一个活动(是不是要完蛋)
由制作尝试 的剩余活动对象
来完成他们!
所以试code
如果(getIntent()。getStringExtra(finishingallact)!= NULL)
{
如果(getIntent()。getStringExtra(finishingallact)。与toLowerCase()。等于(是))
{
yourRemainingAct ACT1 =新yourRemainingAct();
act1.finish();
//尝试相同的所有剩余活动
}
}
I google it but even if i run this code below it didnt finish the other activities.
ButtonClick.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
LoginManager.getInstance().ctrl = false;
UserManager.getInstance().loginControl();
OrderManager.getInstance().orderCtrl = false;
Intent intent = new Intent(OrderComplete.this,
MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
finish();
}
});
}
As per Our Discussion in Comments
Your Given Code is Fine !
Q1. Why its Not Finishing All the Activities ?
Ans. I think All Activities Are Finished
Except Activities
who have Thread or AysncTask
running in Background or not Finished yet!
Q2. How Can i Finish Them ?
Ans. Make Sure your Thread Should be Finished ! or You can Try Timeout etc
!
Additional
Pass String with Your Intent
for this Add Code
intent.putExtra("finishingallact", "yes");
Inside First Activity (Which is not to be Finished)
Try by Making Object of Remaining Activities
to Finish Them !
So Try code :
if(getIntent().getStringExtra("finishingallact")!=null)
{
if(getIntent().getStringExtra("finishingallact").toLowerCase().equals("yes"))
{
yourRemainingAct act1=new yourRemainingAct();
act1.finish();
// Try Same For ALl Remaining Activities
}
}
这篇关于如何完成所有活动,除了第一个活动?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!