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

안드로이드 명시적 intent할때 단어의 의미

0 추천
Button login_btn = (Button) findViewById(R.id.login_membership_btn);

login_btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Intent intent = new Intent(MainActivity.this, MemberActivity.class);
        startActivity(intent);
        finish();
    }
});
다음과 같은 문장이 화면을 넘어가는 것이다 라는것은 알겠는데 
setOnClickListener()이렇게 쓰면 nullable이라고 뜨는것과 
setOnClickListener(new View.OnClickListener() 이부분의 의미와
public void onClick(View view) 이부분의 의미가 궁금합니다. 단순 외우는것이아닌 이해하고 넘어가려고 합니다.
dosona (470 포인트) 님이 2017년 12월 28일 질문

1개의 답변

+1 추천
 
채택된 답변
1. Nullable : parameter를 받도록 method를 설계했으나 null값을 받더라도 의도된 동작이다.

 

2. new View.OnClickListener() : parameter에 OnClickListener reference를 미리 정의된 것을 전달하는 것이 아니라, 해당 line에서 바로 생성함. (Anonymous Class)

 

3. public void onClick(View view) : Anonymous Class의 override method를 정의
디자이너정 (42,810 포인트) 님이 2017년 12월 29일 답변
dosona님이 2017년 12월 29일 채택됨
...