안드로이드 개발 생성자 추가하는 방법, There is no default constructor available in |
환경: Android Studio |
다른 클래스를 상속받아 나만의 기능 확장형 클래스를 만든다면 반드시 추가해야 되는 것들이 있습니다. 그 중 하나가 생성자 입니다. 생성자를 추가하지 않으면 There is no default constructor available in 이라는 에러로 표시해 줍니다. 안드로이드 스튜디오에서 어떻게 생성자를 빠르게 추가할 수 있는지 알아 보겠습니다.
▼ 그림처럼 There is no default constructor available in 메시지 에러가 난다면 생성자를 추가해 줘야 합니다.
▼ 대부분 생성자는 클래스명을 함수명으로 사용해서 만듭니다. 하지만 상속받은 클래스마다 형태가 틀립니다. 그림처럼 파라미터가 없는 생성자 함수를 만들었는데도 에러가 난 것은 상속받은 클래스에 넘겨 줘야 할 정도가 있다는 뜻입니다.
▼ 그런데 생성자 함수에서 어떤 파라미터를 넘겨야 되는지 어떻게 알 수 있을까요? 실제 상속 클래스를 봤더니 전부 파라미터로 Context 를 넘겨야 합니다. 아래 3가지 중 하나를 선택해서 생성자를 만들어야 합니다.
▼ 안드로이드 툴을 이용해서 좀더 간단하게 추가해 보겠습니다. 오른쪽 마우스를 눌러 Generate 메뉴를 선택합니다.
▼ Generate 메뉴에서 다시 생성자를 뜻하는 Constructor 을 선택합니다.
▼ 팝업창에 Constructor 생성자 목록이 뜨면 하나를 선택합니다.
▼ 그림처럼 자동으로 생성자가 추가 되었습니다. 에러도 없어졌네요. 이상으로 클래스를 상속받아 만들 때 생성자 에러가 나면 어떻게 조치하는지 알아 보았습니다.
'안드로이드 개발' 카테고리의 다른 글
안드로이드 개발 레이아웃 인플레이션(LayoutInflater)으로 화면 구성하는 방법 (0) | 2018.01.04 |
---|---|
안드로이드 개발 setId() 에러 Expected resource of type id 해결하는 방법 (0) | 2018.01.02 |
안드로이드 개발 Activity 호출하고 결과값을 받는 onActivityForResult 사용하는 방법 (0) | 2017.12.30 |
안드로이드 개발 서비스(Service) 컴포넌트 예제 구현하는 방법 (0) | 2017.12.27 |
안드로이드 개발 RelativeLayout 화면을 Java 소스에서 구현하는 방법 (0) | 2017.12.17 |
안드로이드 개발 No orientation specified, and the default is horizontal. This is a common source of bugs when children are added dynamically. 에러 해결 (0) | 2017.12.06 |
안드로이드 개발 Android WebView 로컬 HTML 파일 표현하는 방법 (0) | 2017.12.04 |
안드로이드(Android) 개발 컴포넌트 공유 객체 Application 만들어서 사용하는 방법 (0) | 2017.11.30 |