2017-11-07 7 views
0

RecyclerViewの各項目の平均評価を返す方法がありますが、すべての評価の全体的な評価は、特定の評価の代わりに行。私は自分のデータベースに正しく保存されているRating_table.GET_ALL_RATINGSリサイクラービューのratingbarからの平均評価を表示

public float getAvgRate(int locationID) 
    { 
     mDatabase = this.getReadableDatabase(); 
     Cursor cursor = mDatabase.rawQuery(Rating_table.GET_ALL_RATINGS, 
       new String[] {String.valueOf(locationID)}); 
     cursor.moveToFirst(); 
     if (cursor.getCount() > 0) 
      return cursor.getFloat(cursor.getPosition()); 
     cursor.close(); 
     mDatabase.close(); 
     return 0; 
    } 

すべての値のために

select AVG(rating_value) from rating where location_id = ?; 

を使用しますが、それだけで正しく表示されません。

答えて

1

私はあなたが行セット内のカーソルの現在位置を返します Androidデベロッパー

getPosition()に代わり

cursor.getFloat(cursor.getPosition()); 

cursor.getFloat(0); 

を使用すると思います。

getFloat(int columnIndex) 要求された列の値をfloatとして返します。

関連する問題