2013-01-03 2 views
0

"swimm_lap"(문자열로 저장된 숫자) 열 합계를 추가하고 textview에 표시하려면 어떻게해야합니까? 내 어댑터sqlite 문자열 열에서 총 가져 오기

public Cursor Query(String filter, String date_filter, String lap_filter) { 
    if (date_filter == null & lap_filter == null){ 
      int sum = 0; 
      Cursor cursor = database.rawQuery 
      ("select sum(swimm_lap) _id,swimm_pos,swimm_date, swimm_lap,swimm_stroke,swimm_time,swimm_media,swimm_efficiency,swimm_note from swimm_table order by cast("+filter+" as integer) asc", null);   
      if (cursor.moveToFirst()) 
      {sum = cursor.getInt(0);} 
      return cursor;} 

과 주요 활동에서 내가 무엇을 여기

에서 .... 뭔가 같은 ... 선택 합 (swimm_lap)를 추가하려고

totallap = (TextView) findViewById(R.id.total_lap); 
totallap.setText(String.valueOf(sum)); 
public void Bindadapter() { 
     datasource.open(); 
    Cursor cursor = datasource.Query(filter, date_filter, lap_filter); 

    String[] columns = new String[] { "swimm_pos", "swimm_date","swimm_lap","swimm_stroke", "swimm_time", "swimm_media", "swimm_efficiency", "swimm_note" }; 
    int[] to = new int[] { R.id.swimm_pos, R.id.swimm_date, R.id.swimm_lap, R.id.swimm_stroke, R.id.swimm_time, R.id.swimm_medialap, R.id.swimm_efficiency, R.id.swimm_note}; 

SimpleCursorAdapter adapter = new SimpleCursorAdapter(
     this, 
     R.layout.list_layout, 
     cursor, 
     columns, 
     to); 


adapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() { 
     public boolean setViewValue(View view, Cursor cursor, int columnIndex) { 
    if (view.getId() == R.id.total_lap) 
     { 
     sum = cursor.getInt(0); 
     String s = String.valueOf(sum); 
     TextView tv = (TextView)view; 
     tv.setText(s); 
     return true; 
     } 

답변

0
int sum = 0; 
Cursor cursor = database.rawQuery("SELECT SUM(swimm_lap) FROM swimm_table", null); 

if (cursor.moveToFirst()) 
{ 
    sum = cursor.getInt(0); 
} 
+0

내 쿼리 (위에서 편집 한 새 코드)에 코드를 통합하려고했지만 이제는 내 listview 및 totallap textview = 0의 첫 번째 레코드 만 표시합니다. – lucignolo

관련 문제