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

if 조건문이 제대로 작동하지 않습니다.

0 추천

validateButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String userID = idEditText.getText().toString();
                Log.d("RegisterActivity", "냐옹냐옹1");
                Log.d("RegisterActivity", userID);

                Response.Listener<String> listener = new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {
                            JSONObject jsonResponse = new JSONObject(response);
                            boolean success = jsonResponse.getBoolean("success");
                            Log.d("RegisterActivity!!", jsonResponse.getBoolean("success")+"");
                            Log.d("RegisterActivity", "냐옹냐옹3");
                            Log.d("RegisterActivity", jsonResponse.getString("userID");

        ------이부분-----       if(success){
                                Log.d("RegisterActivity", "냐옹냐옹4");
                                Log.d("RegisterActivity", jsonResponse.getString("userID"));

                                AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this);
                                builder.setMessage("사용가능한 아이디입니다.")
                                        .setNegativeButton("확인", null)
                                        .setCancelable(true)
                                        .create();
                                builder.show();
                                validate = 1;

                            }
                            else{
                                Log.d("RegisterActivity", "냐옹냐옹5");
                                Log.d("RegisterActivity", jsonResponse.getString("userID"));

                                AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this);
                                builder.setMessage("이미 사용되고 있는 아이디입니다.")
                                        .setNegativeButton("확인", null)
                                        .setCancelable(true)
                                        .create();
                                builder.show();
                            }
                        } catch (Exception e) {
                            e.printStackTrace();
                        }

                    }
                };
                ValidateRequest request = new ValidateRequest(userID, listener);
                RequestQueue queue = Volley.newRequestQueue(RegisterActivity.this);
                queue.add(request);
                Log.d("RegisterActivity", "냐옹냐옹2");
                Log.d("RegisterActivity", userID);
            }
        });
log 찍어봤을 때 boolean success가 true가 되는데도 if문이 작동하질 않습니다. 해결방법 알려주실 고수님들 ㅠㅠ 도와주세요
개발자가되자! (450 포인트) 님이 2018년 12월 10일 질문

2개의 답변

0 추천
JSONObject jsonResponse = new JSONObject(response);

JSONObject 안의 response는 어디에 정의되어 있나요?
지금 소스에는 안보이네요.

로그도 비슷한게 많은데 구분할 수 있도록 중복된 내용은 삭제하고,
Unique하게 알아 볼 수 있는 이름으로 구분해서 출력해야 할 것 같네요.

그리고 실제로 출력되는 로그를 표시해 주세요.
지금 공개한 코드로는 증상을 알 수 없습니다.

증상을 알아야 처방을 할 수 있답니다.
Will Kim (43,170 포인트) 님이 2018년 12월 10일 답변
다행히 작동합니다. php파일에 오타가 있더군요^^
저 질문 하나 더 올렸는데 봐주실수 있을까요?
0 추천
그럴리가요? ^^

if문 도착하기 전에 Exception이 발생했을 겁니다.
디자이너정 (42,810 포인트) 님이 2018년 12월 12일 답변
다행히 작동합니다. php파일에 오타가 있더군요^^
저 질문 하나 더 올렸는데 봐주실수 있을까요?
...