我试图在两个活动之间切换。 在活动1中,我将Button命名为GoToSecond以启动第二个活动。 以同样的方式,在活动2中,将Button命名为GoToFirst以启动第一个活动。onRestoreInstance在活动之间切换时未被调用
我在第一个活动中使用了日志消息。
订单I m是点击GoToSecond按钮时得到的是 的onCreate
在onStart
的onResume
onSaveInstance
的onStop
并切换到第二活性。 现在,在第二个活动当我点击按钮GoToFirst,第一个活动打开,在第一个活动 日志顺序
的onCreate
在onStart
的onResume ..
为什么onRestoreInstance没有得到在onStart之后调用? 即使实例存储?
Can anyne help me?
这里是第一活动的代码:
public class MainActivity extends AppCompatActivity {
EditText hello;
Button b1;
public static String TAG="Prajwal";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
hello=(EditText) findViewById(R.id.hello);
Log.d(TAG,"OnCreate counter 1");
b1=(Button) findViewById(R.id.b1);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(MainActivity.this,Main2Activity.class);
startActivity(i);
}
});
我还没有在代码加入日志消息。
和第2活动代码是
public class Main2Activity extends AppCompatActivity {
Button b2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
b2=(Button) findViewById(R.id.b2);
b2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(Main2Activity.this,MainActivity.class);
startActivity(i);
}
});
Log.d(MainActivity.TAG,"Oncreate 2");
}
例如 如果I HV在第一活动一个EditText,如果我在它甲肝一些文字,我米丢失该文本而第二活动之间进行切换以第一活动。 bcoz onCreate在第一个活动中被调用。 但是,当我切换到横向模式onRestoreInstance被调用,我没有丢失任何文本。
邮政代码的第请'活动'。 – earthw0rmjim