2011-12-05 7 views
0

データベースのデータを使用して作成されたビジネス・オブジェクトをいくつか作成しました。私はこれをやっているので、何度も何度もDBにヒットしたくはありません。ビジネスオブジェクトは、パーセル可能なインタフェースを実装します。ビジネスオブジェクトのarraylistを次のアクティビティに置くことができます。私はAPILevel 8を使用しているので、SharedPreferences.editor putExtraSetを使用する必要はありません。 APIレベル11以上を使用していてもPutExtraSetは、文字列のセットのみを持つことができます。アプリケーション全体で使用可能なユーザー定義オブジェクトのリストの作成

1つのアクティビティから別のアクティビティに転送するのではなく、アプリケーション全体でarrayListまたはビジネスオブジェクトのコレクションを使用できるようにするにはどうすればよいですか?

ご協力いただきありがとうございます。

答えて

0

Applicationクラスを拡張します。

class SomeName extends Application{ 

    private Object obj; 
    public Object getObj(){ 
     return obj; 
    } 
    public void onCreate(){ 
     super.onCreate(); 
    } 
} 

アプリケーションクラスは、アプリケーションにグローバルで、

((SomeName)getApplication).getObj(); 

またはちょうどあなたがたくさんに

SomeName someName = (SomeName)getApplication(); 
someName.getObj(); 
をそれを使用する場合、あなたの活動での参照を保持を呼び出すことにより、任意の活動によってアクセスすることができます

androidManifest.xmlには次の処理が行われています。

<application android:icon="@drawable/icon" android:label="@string/app_name" android:name="SomeName"> 
+0

ありがとうございました。しかし、getApplicationContext()ではなくgetApplication()でなければなりません。そして、アプリケーションタグのandroidmanifest.xmlに、android:name = "SomeName"を追加する必要があります – SurRam

0

新しいクラスを作成し、これらのオブジェクトを作成します。private staticこれらはClassname.objectnameとして参照できます。

アクティビティでは、Global.getObject()としてアクセスし、Global.setObject(obj)を変更できます。

+0

私はそれを得ていませんでした。 u pls精巧にすることはできますか? – SurRam

+0

あなたのオブジェクトは何ですか? – freshDroid

+0

はそれを働かせて、応答を引き起こします。とにかくお返事ありがとうございました – SurRam

関連する問題