【问题标题】:How to save a listview after populating it填充后如何保存列表视图
【发布时间】:2011-11-21 13:16:31
【问题描述】:

关闭后是否可以从列表视图中保存项目?

我的意思是如果我开始一个活动,它会填充列表,然后立即使用 finish() 关闭自己,是否可以保存列表视图,因为它是在填充后立即保存的?

因为如果我完成活动,项目就会消失。

我无法正常运行活动,我只需要它来填充列表并消失或留在后台。

【问题讨论】:

  • 使用 SQLite 保存数据。
  • 你如何加载列表视图,是用户加载它吗?您可以在列表视图项目上运行一个循环,如果您再次需要它,可以将其保存在内容提供程序中。但确切的答案取决于您如何填充列表。

标签: android xml listview android-activity


【解决方案1】:

我遇到了同样的问题,我通常最终做的是创建一个包含变量的 Application 类,然后在那里填充您的 List 并在每次返回 Activity 时重复使用,如果您只想在期间保存信息运行。如果您的列表是大型或复杂的数据类型,那么这是更好的。所以创建一个这样的类:

package com;
/**
 * Global class to hold the application states of the List object
 *
 */
public class MyGlobals extends Application {

    private List obj;

    public List getList() {
        return this.obj;
    }

    public void setList(List o) {
        this.obj = o;
    }
}

不,您可以通过调用在活动中的任何位置引用此列表

((MyGlobals)this.getApplication()).getList();

你还需要修改你的 Manifest.xml

<application android:name="com.MyGlobals" android:icon="@drawable/icon" android:label="@string/app_name">
      <activity android:name=".MainActivity" android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
      </activity>
 ....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-05
    • 2019-07-04
    • 1970-01-01
    • 2012-07-14
    • 1970-01-01
    • 2021-03-08
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多