2012-09-19 5 views
1

나는 다음과 같은 예외를 얻고있다 던졌습니다 : ExpandableListView.setAdapter는() IllegalStateException이

java.lang.IllegalStateException: get field slot from row 0 col -1 failed 

ExpandableListViewsetAdapter() 전화

. 누군가이 문제를 해결하도록 도와 줄 수 있습니까? . 마지막 줄은 예외가 발생

Cursor mCursor = tasksListCursor(); 
    Log.i("ChronicleTaskList", "rowcount: "+mCursor.getCount()); 
    startManagingCursor(mCursor); 
    boolean flag = mCursor.moveToFirst(); 
    while (flag) { // This loop executes fine. 
     long id = mCursor.getLong(mCursor.getColumnIndexOrThrow(ChronicleDb.KEY_ID)); 
     String name = mCursor.getString(mCursor.getColumnIndexOrThrow(ChronicleDb.KEY_NAME)); 
     long from = mCursor.getLong(mCursor.getColumnIndexOrThrow(ChronicleDb.KEY_FROM)); 
     long to = mCursor.getLong(mCursor.getColumnIndexOrThrow(ChronicleDb.KEY_TO)); 
     Log.i("ChronicleTaskList", id + ", "+ name+ ", "+ from+ ", "+to); 
     flag = mCursor.moveToNext(); 
    } 
    String[] grpFromCols = { ChronicleDb.KEY_NAME}; 
    int[] grpToVals = { R.id.cGroupRowTextName }; 
    String[] fromCols = { TasksDbAdapter.KEY_TODODATE, 
      TasksDbAdapter.KEY_NAME }; 
    int[] toVals = { R.id.textViewDate2, R.id.taskRowTextTask }; 

    ChronicleTreeListAdapterSimple adapter = new ChronicleTreeListAdapterSimple(this, mCursor, 
      R.layout.c_group_row, grpFromCols, grpToVals, 
      R.layout.task_row2, fromCols, toVals, true); 
    expandableListView.setAdapter(adapter);  

을 (난 이미 :(이일을 낭비) 그리고 어댑터는 다음과 같습니다. 그것은 이제 해결되었습니다

public class ChronicleTreeListAdapterSimple extends SimpleCursorTreeAdapter { 
protected static String TAG = "ChronicleTreeListAdapter"; 

public ChronicleTreeListAdapterSimple(
     ChronicleTaskList context, Cursor cursor, 
     int groupLayout, String[] groupFrom, int[] groupTo, 
     int childLayout, String[] childFrom, int[] childTo, 
     boolean showGroupName) { 
    super(context, cursor, groupLayout, groupFrom, groupTo, childLayout, childFrom, childTo); 
    taskList = context; 
} 

답변

관련 문제