我正在使用TabActivity(例如,TActivity)来创建选项卡,并且在每个选项卡中我正在加载相同活动的实例(例如,MainActivity)。 通过这个活动,我想切换另一个活动(例如,ChildActivity对于每个选项卡都是相同的,即在每个选项卡中我们将获得此活动的实例)使用Button click。 此按钮在原始TabActivity(TActivity)中进行了硬编码。 现在我能够做到这一点。但现在我想使用相同的按钮在'MainActivity'和'ChildActivity'之间切换。
MainActivity:
class MainActivity ...{
onCreate(){
Btn.setOnClickListener(new OnClickListener(--) {
public void onClick(--){
Intent intent = new Intent(getBaseContext(),ChildActivity.class);
replaceContentView("MainActivity", intent);
}});
}//MainActivity
public void replaceContentView(String id, Intent newIntent) {
View view = getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_REORDER_TO_FRONT)) .getDecorView(); this.setContentView(view);
}//replaceContentView
在ChildActivity中:
public void hideCurrentActivity(){
Intent intent = new Intent(getBaseContext(),MainActivity.class);
replaceContentView("ChildActivity", intent);
}
public void replaceContentView(String id, Intent newIntent) {
View view = getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP) .getDecorView(); this.setContentView(view);
}
好的,现在的问题是这段代码每次都会创建新的活动。因此,一旦我切换到之前的活动,之前的所有数据都会丢失。但我不想创建新的活动而只是想把旧的活动带到前面。
有人可以帮忙吗? 提前谢谢。