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

ㅠㅠ 널포인터 워닝 나온느데 어떻게 수정해야할지..

0 추천
@Override
   public void onClick(DialogInterface dialog, int which) {
    SharedPreferences pref = getSharedPreferences("LOGIN3",
      MODE_PRIVATE);
    final EditText idtext = (EditText) findViewById(R.id.loginid);
    final EditText pwtext = (EditText) findViewById(R.id.loginpw);
    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", ""));

    try {

     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();
    }
   }

 

 

 

05-30 03:16:12.887: W/System.err(990): java.lang.NullPointerException
05-30 03:16:12.887: W/System.err(990):  at com.tabactivity.TabLayoutActivity$2.onClick(TabLayoutActivity.java:116)
모르겟다zz (650 포인트) 님이 2013년 5월 30일 질문

3개의 답변

0 추천

username

idtext

idtext.getText()

요기 셋중에 하나가 널인듯하니

로그로 세개값을 따로따로 먼저 찍어보시면 답 나올껍니다.

블랙넥원 (9,600 포인트) 님이 2013년 5월 30일 답변
보잘것없는 소스 바주셔서 감사합니다~ ㅠㅠ
0 추천

username이 null 일듯 하네요. ^^

final String username = pref.getString("data1", null);

 

컨버전스 (180 포인트) 님이 2013년 5월 30일 답변
찾아보니 idtext 널이엇어요! 소스봐주셔서 감사합니다 ㅠ
0 추천
SharedPreferences pref = getSharedPreferences("LOGIN3",
      MODE_PRIVATE);
    final EditText idtext = (EditText) findViewById(R.id.loginid);
    final EditText pwtext = (EditText) findViewById(R.id.loginpw);
    final String username = pref.getString("data1", null);
    final String userpassword = pref.getString("data2", null);

 

요 구문을

 

 SharedPreferences pref = getSharedPreferences("LOGIN3",
      MODE_PRIVATE);
    final EditText idtext = (EditText) findViewById(R.id.loginid);
    final EditText pwtext = (EditText) findViewById(R.id.loginpw);
    final String username = pref.getString("data1", "");
    final String userpassword = pref.getString("data2", "");
 

요렇게 바꾸면 될듯합니다!
안드로메다개발자 (8,830 포인트) 님이 2013년 5월 31일 답변
...