Android: Change Screens
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
How do I pass data between activities in Android?
我的应用程序启动并加载第一个屏幕,然后用户通过单击按钮切换到下一个屏幕:
1 2 | Intent intent = new Intent(DashboardActivity.this, LoginActivity.class); startActivity(intent); |
然后从那里,用户再次切换到下一个屏幕:
1 2 | Intent intent = new Intent(LoginActivity.this, NextActivity.class); startActivity(intent); |
现在堆栈上应该有3个屏幕,在最后一个屏幕上,我想一直回到第一个屏幕,如何一键完成?
我想将最后一个屏幕的putExtra(")数据发送到第一个屏幕。
加上这个
在NextActivity中
1 2 3 4 | Intent myIntent = new Intent(NextActivity.this, DashBoardActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); myIntent.putExtra("UserName",UserName); startActivity(myIntent); |
在DashBoardActivity中,
1 2 | Intent intent = getIntent(); UserName=intent.getStringExtra("UserName"); |
你可以这样做
1 2 3 4 5 | Intent intent = new Intent(NextActivity.this, DashboardActivity.class); // This will remove all activities which are on the top of DashboardActivity intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.putExtra("<Your data will be here>"); startActivity(intent); |
希望对你有帮助
1 2 3 | Intent intent = new Intent(NextActivity.this, LoginActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent ); |
这将清除活动堆栈中当前活动顶部的所有活动。
1 2 3 4 | Intent intent = new Intent(LoginActivity.this, DashboardActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.putExtra("string",strValue); startActivity(intent); |
它非常简单,你必须制作一个指向第一个活动并在那里获取数据的Intent: