https://soo0100.tistory.com/1875
XML 과 커스텀 뷰 같이 사용하기
https://soo0100.tistory.com/1874 코드로 로직 구성 및 XML 컴포넌트들의 인 플레이트 어찌 보면 이 두 개가 다다. 물론 로직 구성을 위한 데이터 처리를 위" data-og-host="soo0100.tistory.com" data-og-source..
soo0100.tistory.com
지난 시간 XML 에디터에서 커스텀 뷰를 불러와서 화면을
구성하는 예제를 살펴보았다. 이때 커스텀 뷰는 별도의 public class 였지만 오늘은 커스텀 뷰가 이너클래스 인 경우
XML 에디터 에서 어떻게 커스텀 뷰를 불러 올 수 있는지에 대한 내용입니다.
지난 시간 커스텀 뷰는 별도의 클래스를 만들어서 하기처럼 XML에디터에서 불러들였다.
이너클래스 역시 이렇게 코딩을 하면 인플레이팅 에러로 앱이 죽게된다.
Error inflating class
<bluemooninsea.soo.graphic.MyView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="8" />
결론은 하기처럼 이너클래스를 XML에 삽입하자.
view class ="" 로 스트링 으로 패키지로 클래스를 명을 써서 이너클래스를 불러들인다.
이너클래스를 위해서 사용된 $는 XML 코드에서는 에러를 발생시키기에 view class 를 사용한다.
<view class="bluemooninsea.soo.graphic.MainActivity$MyViewTest"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="8" />
추가로, 이너 클래스는 static 으로 수정한다.
public static class MyViewTest extends View {
정리하자면,
1. 이너클래스를 static 으로 선언하고
2. XML에서는 view class="" 구문을 사용하여 해당 커스텀 뷰를 불러들인다.
감사합니다.
'앱 만들기 > 안드로이드 study' 카테고리의 다른 글
옵션 메뉴 만들기 (6) | 2022.07.12 |
---|---|
안드로이드 탐색 메뉴 숨기기 (8) | 2022.07.04 |
안드로이드 스튜디오 프로젝트 여러창에서 열기 (6) | 2022.07.02 |
안드로이드 버튼 이벤트를 구현하는 방법 4가지 - 4 (4) | 2022.07.01 |
안드로이드 버튼 이벤트를 구현하는 방법 4가지 - 3 (4) | 2022.06.23 |
댓글