2017-03-06 1 views
1

질문이 있습니다. 퀴즈 응용 프로그램이있어서 질문과 복수 응답을 MySQL database에서 가져옵니다. radio buttons에 여러 답변이 표시됩니다. 하나의 라디오 버튼을 클릭하고 제출 버튼을 클릭하면 MySQL에 클릭 된 라디오 버튼을 저장해야합니다. 어떻게하면 Asynctask을 사용하여 검색 할 수 있습니까? 내가 imageandroid에서 선택한 라디오 버튼을 보내고 mysql에 저장하십시오.

+0

무엇을 시도 했습니까? – shadygoneinsane

+0

@shadygoneinsane 라디오 버튼에 대한 oncheckedchangelister를 설정했습니다. 여전히 – Remy

+0

SQL Db 스키마를 공유 할 수 있습니까? 항상 다른 열을 추가하고 해당 정보를 선택한 정보를 저장할 수 있습니다 .. – shadygoneinsane

답변

0
public void onRadioButtonClicked(View view) { 
     // Is the button now checked? 
     boolean checked = ((RadioButton) view).isChecked(); 
     // Check which radio button was clicked 
     switch(view.getId()) { 
      case R.id.radiobtn: 
       if (checked) 
        //do something 
       break; 
     } 
    } 

이 시도 실행중인 응용 프로그램의 이미지를 첨부

가능하면

코드를 제공하십시오.

0

개장 또는 발리처럼 좋은 라이브러리가 필요합니다.이 예제에서는 발리를 사용하고 있습니다.

귀하의 버튼 clicklistener에이 코드를 추가하십시오.

StringRequest stringRequest = new StringRequest(Request.Method.POST, "your_url", new Response.Listener<String>() { 

     @Override 
     public void onResponse(String response) { 

      JSONArray jsono; 
      try { 
       jsono = new JSONArray(response); 
       for (int i = 0; i <jsono.length(); i++) { 
        JSONObject jsonobject = jsono.getJSONObject(i); 
        /* parse server response and if it satisfies do what you want. 

       } 

      } catch (JSONException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
      ///System.out.println("Server Replied :" + response); 


        Toast.makeText(YourActivity.this, response, Toast.LENGTH_SHORT).show(); 

       } 
      }else { 
       //Toast.makeText(YourActivity.this, "some error", Toast.LENGTH_SHORT).show(); 

      } 

     } 
    }, 
      new Response.ErrorListener() { 

       @Override 
       public void onErrorResponse(VolleyError error) { 
        Toast.makeText(YourActivity.this, error.toString(), Toast.LENGTH_LONG).show(); 
        System.out.println("Server Replied Error :" + error.toString()); 

       } 
      }) 
    { 

     @Override protected Map<String, String> getParams() { 
      Map<String, String> params = new HashMap<String, String>(); 
int selectedId = radioGroup.getCheckedRadioButtonId(); 
radioButton = (RadioButton) findViewById(selectedId); 
      params.put("Answer", radioButton.getText().toString()); 
      params.put("something", something.getText().toString()); 
      return params; 
     } 
    }; 

    stringRequest.setRetryPolicy(new DefaultRetryPolicy(
      8000, 
      DefaultRetryPolicy.DEFAULT_MAX_RETRIES, 
      DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); 
    RequestQueue requestQueue = Volley.newRequestQueue(this); 
    requestQueue.add(stringRequest); 
} 
관련 문제