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

DB에 체크된 라디오버튼id값 저장하고 불러와서 체크해주는 방법

0 추천

DB create문 입니다.

db.execSQL("CREATE TABLE member (_id INTEGER PRIMARY KEY AUTOINCREMENT,"
     +"name TEXT NOT NULL,email TEXT UNIQUE NOT NULL,gender TEXT,potatoa INTEGER DEFAULT 0,"
     +"potatob INTEGER DEFAULT 0,potatoc INTEGER DEFAULT 0,coin INTEGER DEFAULT 2000,totalpotato INTEGER DEFAULT 0,dopotato INTEGER DEFAULT 0);");
 

//체크된 성별 가져오기
  radiogender=(RadioGroup)findViewById(R.id.rGroup1);
  radioman=(RadioButton)findViewById(R.id.radioman);
  radiowoman=(RadioButton)findViewById(R.id.radiowoman);
  rgender=(RadioButton)findViewById(radiogender.getCheckedRadioButtonId());
  
  //레코드 출력 select 
  Cursor cursor;
  cursor=db.rawQuery("SELECT name,email,gender FROM member WHERE _id=1;", null);
  while(cursor.moveToNext())
  {
   String name=cursor.getString(0);
   String email=cursor.getString(1);
   String gender=cursor.getString(2);
   
   username.setText(name);
   useremail.setText(email);
   if(gender == "radiowoman")
   {
    radiowoman.setChecked(true);
    radioman.setChecked(false);
   }
   else if(gender== "radioman")
   {
    radioman.setChecked(true);
    radiowoman.setChecked(false);
   }
  }//end of while

  
  //저장 버튼 누르면 정보 insert
  imageViewsaveupdate.setOnClickListener(new View.OnClickListener() {
     
   @Override
   public void onClick(View v) {
    //DB 레코드 insert
    String iname=username.getText().toString();
    String iemail=useremail.getText().toString();
    //String igender=rgender.getText().toString();
    
    try
    {
      db.execSQL("UPDATE member SET name='"+iname+"' WHERE _id=1;");
      db.execSQL("UPDATE member SET email='"+iemail+"' WHERE _id=1;");
      db.execSQL("UPDATE member SET gender='"+rgender+"' WHERE _id=1;");
    }catch(SQLException e){
     Message.obtain();
    }
    
    Toast.makeText(getApplicationContext(),"저장되었습니다.", Toast.LENGTH_SHORT).show();
    
    //다시 onCreate문 뿌려주기
   }
  });

이렇게 코딩했더니

저장버튼을 터치하면 중지되더라구요 ㅠㅠ

어떻게 해야 체크된 라디오버튼 ID를 DB에 저장하고

다시 해당액티비티를 열 때 DB에 저장된 내용을 바탕으로 라디오버튼을 체크

할 수 있는지 조언 부탁드립니다.

wlsalsquf (120 포인트) 님이 2013년 10월 24일 질문

1개의 답변

0 추천
rgender를 그대로 넣어서 그런거 아닌가요? 어디가 체크 되었는지 그 값을 넣어야 할텐데...

그리고 액티비티를 열때마다 하는거면 아무래도 값이 있는지 먼저 확인하고 있으면 저장된거 뿌려주고

없으면 입력하게 하고... 그런식으로 해야겠지요.
인연 (31,880 포인트) 님이 2013년 11월 13일 답변
...