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

소스 널포인트 수정..

0 추천
AlertDialog.Builder aDialog = new AlertDialog.Builder(
    TabLayoutActivity.this);
  aDialog.setTitle("로그인하시겠습니까?");
  aDialog.setView(layout);
  
  final EditText idtext = (EditText) findViewById(R.id.loginid);
  final EditText pwtext = (EditText) findViewById(R.id.loginpw);
  
  
  SharedPreferences pref = getSharedPreferences("LOGIN3", MODE_PRIVATE);
  
  final String username = pref.getString("data1", null);
  final String userpassword = pref.getString("data2", null);
  Log.i("exp", pref.getString("data1", ""));
  Log.d("exp", pref.getString("data2", ""));
  
  
  aDialog.setPositiveButton("로그인", new DialogInterface.OnClickListener() {

   
   @Override
   public void onClick(DialogInterface dialog, int which) {
    
    try {
     
     Log.d("EXP", idtext.getText().toString());  // 여기!!!!!!!! idtext!!!
     Log.d("EXP", pwtext.getText().toString());
     if (username.equalsIgnoreCase(idtext.getText().toString())
       && userpassword.equalsIgnoreCase(pwtext.getText()
         .toString())) {
      Toast.makeText(TabLayoutActivity.this, "로그인성공",
        Toast.LENGTH_SHORT).show();
     } else {
      Toast.makeText(TabLayoutActivity.this, "로그인 실패",
        Toast.LENGTH_SHORT).show();
     }
    } catch (Exception e) {
     e.printStackTrace();
    }
   }
  });
  aDialog.setNegativeButton("취소", new DialogInterface.OnClickListener() {
   public void onClick(DialogInterface dialog, int which) {
    Toast.makeText(TabLayoutActivity.this, "어플이 종료됩니다.",
      Toast.LENGTH_SHORT).show();
    finish();
   }
  });
  AlertDialog ad = aDialog.create();
  ad.show();

 }

 

위에 표시햇듯이 idtext.getText().toString 여기가 널포인트인데요...

그러니까  제가 EditText에 입력한 값을 가져오는건데 왜 null로 되잇을까요..

코드로 봣을땐 이해가안되네요 ㅠㅠ 널포인트 찾다가 로그 하나하나 다넣다보니 저놈이 문제인것을

발견은 햇는데요... 물론 pw도 문제입니다... 고수분들 도와주쎼용 ㅠ
모르겟다zz (650 포인트) 님이 2013년 5월 30일 질문

1개의 답변

0 추천
현재 onCreate 안에 final로 선언하셨네요

아마 상수화 때문이라 그런거같은데..

onCreate 밖, class안에 private로 해당 EditText를 선언하고

onCreate 안에서 findViewById 하신뒤 사용해 보세요
적유 (1,760 포인트) 님이 2013년 5월 30일 답변
...