【发布时间】:2013-12-14 04:20:28
【问题描述】:
你好
我想知道这个概念在android中是如何实现的
- 此应用程序中的导航如下所示::
活动1--到--->活动2--到--。>活动3--到--> 活动2
但是这样做 ::
我传递的数据来自
Activity1 - -> Activity 2- -> 我没有从Activity2传递数据 - - > 活动3
现在
如果我导航回 Activity2- - 从 - - Activity3
- 应用程序关闭,因为 Activity2 正在等待数据 Activity3 中不存在
- 我怎样才能克服这个问题,我怎样才能保存状态(甚至数据) 从 Activity3 导航回来之前的活动 2
循环必须是 ::
活动1--到--->活动2--到--。>活动3--到--> 活动2
- 如何做到这一点?
- 我需要寻找哪些概念
我希望我的描述很清楚
我提供了一个示例程序来支持我的问题
如何修改代码来实现这一点
MainActivity.java
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity1);
Button BTN=(Button) findViewById(R.id.activity3button3);
BTN.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent INT=new Intent(MainActivity.this,Activity2.class);
INT.putExtra("hi", "HI");
startActivity(INT);
}
});
}
}
Activity2.java
public class Activity2 extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity2);
Button BTN=(Button) findViewById(R.id.activity3button3);
BTN.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent INT=new Intent(Activity2.this,Activity3.class);
startActivity(INT);
}
});
}
}
Activity3.java
public class Activity3 extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity3);
Button BTN=(Button) findViewById(R.id.activity3button3);
BTN.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent INT=new Intent(Activity3.this,Activity2.class);
startActivity(INT);
}
});
}
}
【问题讨论】:
-
您是否有理由在单个活动中使用多个活动而不是多个片段?
标签: android