相关疑难解决方法(0)

使用navigateUpFromSameTask()从活动返回

我有两个活动,A和B.当活性A被第一次启动,它访问Intent传递给它(因为Bundlenull,因为它应该通过在第一时间),并相应地显示信息:

CustInfo m_custInfo;
...
protected void onCreate(Bundle savedInstanceState)
{
    ...
    Bundle bundle = (savedInstanceState == null) ? getIntent().getExtras() : savedInstanceState;
    m_custInfo = (CustInfo) m_bundle.getSerializable("CustInfo");
    if (m_custInfo != null
        ...
}
Run Code Online (Sandbox Code Playgroud)

这在第一次通过时工作正常.该EditText控制和ListView正确地填写.

现在,当单击列表中的项目时,将启动活动B以显示详细信息:

m_custInfo = m_arrCustomers.get(pos);

Intent intent = new Intent(A.this, B.class);
intent.putExtra("CustInfo", m_custInfo); // CustInfo is serializable
// printing this intent, it shows to have extras and no flags

startActivityForResult(intent, 1);
Run Code Online (Sandbox Code Playgroud)

在acivity B启动之前,框架调用A被覆盖onSaveInstanceState():

protected void onSaveInstanceState(Bundle outState)
{ …
Run Code Online (Sandbox Code Playgroud)

android android-activity android-actionbar up-button

69
推荐指数
2
解决办法
2万
查看次数