私の質問を理解するには、プロジェクトの設計を説明する必要があります。我々は、3つの列を持つDBを持つ単純なMVPの概念を持っています。id name cost(int)DBHelperとModel Classesが使用され、RecyclerAdapterによってサポートされるListActivityと、DetailsActivity ListActivityの項目が選択されています。起動アクティビティMainActivityは、ユーザが多数のクエリを実行できるようにします。標準では、ListActivityからのコールの後にDBHelperに設定されたArrayList内のすべてのデータを表示します。ここで重要な部分は、DBHelperにdbList to ListActivity "return modelList"そこで、コスト列の値をSUMSし、その合計をMainActivityに戻す問合せを作成することにしました。 DBHelperは2つのRETURNステートメントにはまったく不満です。 DBHelperへの呼び出しはListActivityから行われるため、MainActivity NO Wayから直接呼び出しを行うことでこれを回避しようとしました。DBHelperは1つのRETURNステートメントを示しています。私の質問は、DBHelperから合計値を返す方法ですか?クエリが機能し、Mainから呼び出されたコードが下記に投稿されます。SQLiteヘルパークラスの2つのreturnステートメントが許可されていません
public sumALL(){
Cursor cursorA =null;
db = this.getWritableDatabase();
String q = "SELECT SUM(cost) FROM " + TABLE_INFO;
cursorA = db.rawQuery(q,null);
if(cursorA.moveToFirst()){
totalPrice = cursorA.getInt(0);
}
cursorA.close();
db.close();
return totalPrice;
**すべてのメソッド** ** 1のみ**の文を返さなければなりません! –
@ModularSynthはい私はそれに同意しますが、2番目の方法はちょうど2つのうちの1つです。私たちはdbListを生成するメソッドには関与していません。コスト列はモデルにあります。なぜなら、DBHelperが不平を言っている理由です。 –
'第2のメソッド'私は** one **メソッドしか見ることができません。 –