마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

버튼을 누를때마다 값이 증가해야되는데 왜 증가가 안될까요..?

0 추천

리스트뷰마다 있는 각 버튼을 누르면 값이 증가해야되는데 db에 값을 넣고 가져오는건데 흠... 

저기 코드에 로그찍은걸보면 계속 버튼이 누르긴누르는데 다른 액티비티를 다녀오지않는 이상 증가가 안되요...  계속 이렇게 만 뜨고 다른 액티비티를 다녀와야 업데이트가 되는데... 뭐가문제일까요 ㅠㅠ 저 코드사이에 onContentChange() 이 코드 넣어봤는데 다른 날짜를 .append시키는게 있는데 이거까지 같이 더해져서 이상해지더라구요 ㅠㅠ 문제가 뭘까요 

12-04 18:19:31.671 17284-17284/? D/ASDF: update company set click = 2 WHERE _id = 1
12-04 18:19:32.226 17284-17284/? D/ASDF: update company set click = 2 WHERE _id = 1
12-04 18:19:32.851 17284-17284/? D/ASDF: update company set click = 2 WHERE _id = 1
12-04 18:19:33.381 17284-17284/? D/ASDF: update company set click = 2 WHERE _id = 1
12-04 18:19:33.931 17284-17284/? D/ASDF: update company set click = 2 WHERE _id = 1

 

final int  num =cursor.getInt(cursor.getColumnIndex("count"));
final int position = cursor.getInt(cursor.getColumnIndex("_id"));
final int pass = cursor.getInt(cursor.getColumnIndex("click"));
final int end = cursor.getInt(cursor.getColumnIndex("end"));
btn_go.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        
        
       int CLICK_UP = pass + 1;
        String pass_modify = "update company set click = " +  CLICK_UP + " WHERE _id = " + position;
        Log.d("ASDF", pass_modify);
        sqlitedb.execSQL(pass_modify);

        progressbar.setProgress((CLICK_UP * 100) / num);


    }

});
do {
    try {

        progressbar.setProgress((pass * 100) / num);

    } catch (Exception e) {
        e.printStackTrace();
    }
}
while (cursor.moveToNext());
뚜루루루둡 (1,130 포인트) 님이 2016년 12월 4일 질문

2개의 답변

0 추천

아래 코드가 어디에 위치해 있는지 모르겠지만

final int pass = cursor.getInt(cursor.getColumnIndex("click"));

final 을 제거해 보시는게...

 

 

빅배스 (4,260 포인트) 님이 2016년 12월 5일 답변
0 추천
DB에 업데이트는 시키는데....업데이트후 다시 불러오는게 아니라면

윗분말처럼 pass 의 final 제거해주시고...pass++; 를 onClick()에 추가해주세요.
바램 (19,650 포인트) 님이 2016년 12월 6일 답변
...