2012-05-24 6 views
0

모든 것을 올바르게 저장하고있는 로컬 sqlite db를 사용하고 있습니다. expandableListView에서 그룹을 열면 db 확인란에 저장된 모든 체크 박스가 선택됩니다. 항목 (AlertDialog을 사용)을 편집 할 때 그룹을 닫은 다음 그룹을 다시 엽니 다. 확인란이 더 이상 선택되지 않습니다. db를 확인하고 편집 내용이 저장되었습니다. 다른 페이지로 이동하여 다시 돌아 오면 그룹을 클릭하면 내가 편집 한 하위 항목이 다시 한번 확인됩니다. 이클립스에서 중단 점을 사용하고 db의 데이터를 찾는 것처럼 보이지만 확인란을 선택 표시하지는 않습니다. 어떤 아이디어? 확장 가능 목록보기 체크 박스가 유지되지 않음

enter image description here

은 내가 먼저 내가 항목

enter image description here

을 업데이트하기에 AlertDialog를 사용하고 (엔진) 이제

enter image description here

그룹을 클릭 할 때의 이미지입니다

지금 그룹을 닫습니다.

enter image description here

내가 배터리로 상자를 다시 16,는 더 이상 확인되지 않습니다. 여기

내가 여기

과는 DB에 저장 업데이트 코드는 그룹

public void onGroupExpand(int groupPosition) 
{ 
    db= new InspectionRecordsTableDBAdapter(getBaseContext()); 
    db.open(); 
    int inspectionId = com.signalsetapp.inspectionchecklist.report 
      .returnStringID(); 
    String [] child=kids[groupPosition]; 
    ArrayList<Color> secList = new ArrayList<Color>(); 
    for(int i=0; i<child.length;i++) 
    { 
     try { 
      if (db.childFound(inspectionId, child[i])) 
       secList.add(new Color(child[i], true)); 
      else 
       secList.add(new Color(child[i], false)); 
     } catch (Exception e) { 
      secList.add(new Color(child[i], false)); 
      e.printStackTrace(); 
     } 

    } 

에게} 열 때 코드입니다. 이것은 DB

db.editRecords(
             primaryId, 
             com.signalsetapp.inspectionchecklist.report 
               .returnStringID(), 
             parent[groupPosition], 
             kids[groupPosition][childPosition], 
             input.getText().toString(), status); 
           onExpand=true; 

답변

2

당신은 requery() 후 그룹 커서가 데이터베이스에 저장해야하며이 목록보기 (또는 다시 쿼리가 사용되지 않았기 때문에 비동기 상당)를 재생한다에 제대로 저장 않습니다.

관련 문제