Android ActivityGroup Activity 意图导航

2020年10月24日 32点热度 0条评论

我面临的活动组非常复杂的问题。在我的应用程序中,我使用了ActivityGroup。在其他活动导航中,我使用了:

Intent activityIntent = new Intent(v.getContext(), Reschedule.class);
    activityIntent.putExtra("dialog_selcted_Appointment_date_time", selected_date +" "+ selected_time);
    replaceContentView("activity3", activityIntent);

private void replaceContentView(String id, Intent newIntent) {
    View view = this.getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) .getDecorView(); this.setContentView(view);}

我的问题是,一旦我在另一个屏幕上导航,便会再次出现此意图,如果再进行一次相同的导航而不更改活动,则会出现以下错误:

02-23 18:16:15.200: E/ACRA(2433): 
Caused by: android.view.WindowManager$BadTokenException: Unable to add window --
 token android.app.LocalActivityManager$LocalActivityRecord@44f04458 is not valid; is your activity running?

解决方案如下:

尝试

View view = getApplicationContext().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) .getDecorView(); this.setContentView(view);}

此外,现在不推荐使用ActivityGroup类。为此目的,使用片段更好,更容易。请参阅
http://developer.android.com/guide/topics/fundamentals/fragments.html