<실행 예시>
<풀이>
보통 xml 파일에서 View를 꾸미지만, java 파일에서 코드를 통해 View를 꾸미는 방법도 있다. 그러기 위해서는 inflate를 사용해야 한다.
inflate를 사용하는 방법으로 두 가지가 있는데 첫번째는 LayoutInflater 객체를 사용하는 것이고 두번째는 View 클래스의 static 메소드인 inflate()를 이용하는 것이다.
두번째 방법이 더 유용하기 때문에 두번째 방법을 어떻게 사용해야 하는지 자세히 이야기해보겠다.
inflate 매개변수로 xml로 디자인한 Component를 불러와 Layout에 addView() 해주면 된다. 이렇게 하면 xml마다 View를 만들어 줄 필요 없이 Component를 효율적으로 재사용할 수 있다.
addView()는 LinearLayout 같은 Layout 클래스의 객체가 가진 메소드로 llManager.addView()를 해주면 Layout에 View가 추가된다. 또한, setOrientation()으로 LinearLayout.{수평 혹은 수직} 설정이 가능하다.
그런데 addView()를 사용할 때 뷰 그룹을 넘겨줘야 하기 때문에 Layout.LayoutParam의 객체를 만들어 addView()의 두번쨰 매개변수로 넘겨주면 된다.
그래서 마지막으로 setContentView()에 xml 파일을 넘겨주는 것이 아니라 llManager를 넘겨주면 코드로 꾸민 View들의 Layout을 화면에 보여준다.
<코드>
inflater: 첫번째 방법 사용 시 LayoutInflater 객체
llManager: xml 파일을 대신할 Layout
'~2023' 카테고리의 다른 글
[Android] 상단바(Action bar)에 옵션 메뉴 구현하기 (0) | 2021.11.17 |
---|---|
[Python] 백준 16173번 16174번 문제, 점프왕 쩰리 시리즈 (0) | 2021.11.17 |
[Git] GitHub에 대용량 파일 업로드 하기 (Git lfs) (0) | 2021.11.12 |
[Java] 백준 16173번 문제, 점프왕 쩰리(Small) (0) | 2021.11.09 |
[Android/JAVA] TableLayout으로 View 이쁘게 배치하기 (0) | 2021.10.30 |