안드로이드 액티비티 화면간 이동
조회수 1240회
findViewById(R.id.Closeinfor).setOnClickListener(this); }
public void Inforclose (View view){
switch (view.getId()){
case R.id.Closeinfor :
this.finish();
break;
}
저 부분에서 findViewById 그쪽에서 this를 사용하였다고 에러가 발생하는데 어떻게 해야지 에러를 없앨수 있을까요?
현재 개발 하려고 하는 것은 닫기 버튼을 누르면 이전 액티비티로 돌아가는 것입니다. Closeinfor는 정보창을 닫는 버튼의 id 입니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
this는 현재 객체(자기자신)를 가리키는 키워드입니다.
this.finish()
에서 에러가 발생했다면 this 객체가 액티비티가 아니기 때문입니다. 아래와 같이 해당 액비티비티(클래스명)를 써주는 방식으로 코드를 변경해보세요.SomeActivity.this.finish();
간단한 팁으로 안드로이드 스튜디오에서 this라고 입력 후 .을 찍으면 해당 객체에서 사용할 수 있는 필드 및 함수에 대한 자동완성 리스트가 뜹니다. 리스트에서 finish() 함수가 있는지 확인해보세요. (=this 객체가 액티비티가 맞는지 확인하는 과정)
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력