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

널포인터 익셉션이 뜨는데 뭐가 문제인지 모르겠습니다 ㅠㅠ

0 추천
package com.example.user.winner;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

public class LoginActivity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

      TextView registerButton = (TextView) findViewById(R.id.registerButton);
      registerButton.setOnClickListener(new View.OnClickListener() {

          @Override
          public void onClick(View view)
              Intent registerIntent = new Intent(LoginActivity.this, RegisterActivity.class);
                LoginActivity.this.startActivity(registerIntent);
      });
    }

}
 
아마
registerButton.setOnClickListener(new View.OnClickListener() 이 쪽에서
널포인터 익셉션이 뜨는것같은데 이거를 어떻게 수정을 해야할까요..ㅠ 
Hyunyy (400 포인트) 님이 2018년 4월 26일 질문

1개의 답변

+1 추천
 
채택된 답변
말씀하신 위치에서 오류가 났다면,  

TextView registerButton = (TextView) findViewById(R.id.registerButton); 에서 반환되는 registerButton값이 null인듯 합니다.

activity_login.xml에 정의된  TextView의 id가 registerButton 으로 들어있는지 확인 해 보세요..
익명사용자 님이 2018년 4월 26일 답변
Hyunyy님이 2018년 5월 28일 채택됨
제가 로그인 레이아웃이 하나있고 레지스터 레이아웃이 하나있습니다.
activity_login.xml에 안적고 activity_register.xml에 적었는데 이 경우에는 안되나요?
activity_register에 적었으면,   setContentView(R.layout.activity_register); 로 바꿔 주셔야 합니다. setContentView로 선언한 레이아웃의 id를 검색하는 거라서요.
...