0

膨大な量のデータを扱うアプリを構築しており、この問題に対処するための優れたソリューションが必要です。データセットを表すクラスがあります。これには、いくつかの ArrayLists といくつかの単純なデータ型が含まれています。これらのクラスの多くを ArrayList にファイルに保存したいと考えています。アプリを起動すると、データが読み込まれ、すべてのアクティビティがこれらのデータを使用する必要があります。異なるアクティビティ間でこれらのデータを共有するにはどうすればよいですか?

4

1 に答える 1

0

最初のアクティビティが開始されたら、AsyncTaskを使用して、データベースまたはアプリに配置した場所からすべてのデータを読み込み、モデル クラスに設定します。モデル クラスを公開し、すべての変数とメソッドも公開します。アプリのすべてのアクティビティがそのデータを使用できるようにします。例はここにあります。

/* Calling a LoadDataBase() class extending AsyncTask 
* to run in background for creating or loading data base.
*/
new LoadDataBase().execute();

この AsyncTask クラスを次のようにコーディングするよりも:

// LoadDataBase class for background execution.
private class LoadDataBase extends AsyncTask<String, Void, String>{  
@Override
protected String doInBackground(String... arg0) {
    // DataBaseHelper class object.
    DataBaseHelperClass dbHelper = new DataBaseHelperClass(this);
    // Create database for the first time.
    try {
    dbHelper.createOrLoadDataBase();
} catch (IOException e) {
    e.printStackTrace();
}

    // Closing the database connection.
        dbHelper.close();
    return "";
}

@Override
protected void onPostExecute(String result) {
//Your code to set data loaded from database to model classes by using getter
    //setter methods.       
} // end onPostExecute(Void... values).
} // LoadDataBase.

これがあなたを助けますように。

于 2012-12-30T06:14:45.463 に答える