使用活动

时间:2015-07-19 14:53:09

标签: android android-listview

已经搜索了由listview填充的保存项目,但结果我发现所有使用的片段,无论如何我尝试没有成功。 我试图做一个简单的事情,保存从网络服务器到我的列表视图的文本,所以当调用方向时,列表视图中填充的文本不会消失。

我在列表视图中添加了文字,例如'listview.add(text);'

尝试在onsave中保存文本并在oncreate中再次填充但不起作用。 有什么指针吗?谢谢

2 个答案:

答案 0 :(得分:0)

方向更改会导致配置更改。

Activities“处理配置更改”部分

  

当发生这样的更改时,Android会重新创建正在运行的活动(系统调用onDestroy(),然后立即调用onCreate())。

所以,保存在onDestroy()。

将onSaveInstanceState()中的代码(保存数据)移动到onDestroy()

此示例使用onDestroy()但onPause()(或onStop(),如果minSdkVersion足够高)可能是一个不错的选择。 (因为它是保存某些东西的正常场所。)

// Your save code (may be onother name)
private void save(String text)
{
    ....
}

// onSaveInstanceState() is NOT part of Activity life cycle.
onSaveInstanceState()
{
    ...
    // save(text); // Move this from here
}

onDestroy()
{
    save(text); // to here.
}

http://developer.android.com/guide/components/activities.html#Lifecycle “保存活动状态”部分

  

注意:无法保证在销毁活动之前调用onSaveInstanceState(),因为在某些情况下不需要保存状态

答案 1 :(得分:0)

/tab2

如果它不起作用,请告诉我。并共享一些代码片段以进一步阐明。