3 つのアクティビティを作成しました。1 つは、データベース指向の操作 (作成、挿入、取得、ドロップ、クローズなど) の実行に使用される DBActivity です。データベースの作成は、DBActivity のコンストラクターで実行されます。セカンダリ アクティビティ StoreActivity は、EditText 値をデータベースに保存します。3 番目のアクティビティ RetrieveActivity は、データベースの値を取得します。DBActivity のオブジェクトを作成し、値をデータベースに保存しました。RetreiveActivity でデータベースを取得しているときに、データベースを取得するためのアイデアは何ですか..? 新しいデータベースが作成される DBActivity のオブジェクトを作成すると、問題が発生しました。StoreActivity で作成された同じデータベースにアクセスするにはどうすればよいですか...コーディングを手伝ってもらえますか..? 前もって感謝します....
質問する
85 次
1 に答える
1
あなたの質問はあなたの概念の問題を反映しています。すべてのアクティビティから独立してデータベースにアクセスする必要があります。したがって、データベースロジックをActivityタイプのクラスに配置しないでください。SQLiteOpenHelperからサブクラス化して、独自のデータベースヘルパークラスを作成します。
これで、データベースにアクセスするすべてのアクティビティで、そのデータベースヘルパークラスのインスタンスを作成できます。そして、おそらくシングルトンインスタンスを試すことを考えることができます。したがって、常に同じヘルパーインスタンスを取得します。
編集:常に同じデータベースを取得するための鍵は、SQLiteOpenHelperクラスのコンストラクターで常に同じデータベース名を使用することです。
于 2012-05-05T16:02:42.653 に答える