BoxView

BoxView (박스 뷰)

자식을 한 축(axis)을 따라 타일링해 상자 모양으로 배열하는 뷰입니다. TeX에서 볼 수 있는 상자와 비슷하게 자식의 정렬과 유연성(flexibility)을 고려합니다.

출처: Java API Reference

본문

이것은 여러 줄, 문단, 목록, 열, 페이지 등을 나타내는 데 유용한 빌딩 블록입니다. 자식이 타일링되는 축을 주축(major axis), 그에 직교하는 축을 부축(minor axis)이라고 합니다.

각 축의 레이아웃은 layoutMajorAxislayoutMinorAxis 메서드가 별도로 처리합니다. 하위 클래스는 이 메서드들을 다시 구현해 레이아웃 알고리즘을 바꿀 수 있습니다. 이 메서드들은 축을 따라 주어진 크기가 바뀌거나 layoutChanged가 호출되어 레이아웃을 강제로 갱신할 때 호출됩니다.

부모 뷰에 게시되는 요구 사항은 calculateMajorAxisRequirementscalculateMinorAxisRequirements 메서드가 계산합니다. 레이아웃 알고리즘을 바꾸면 이 메서드들도 다시 구현해야 할 가능성이 높습니다.

주요 메서드·상세 (Methods & details)

주요 레이아웃 메서드로는 주축·부축으로 자식을 배치하는 layoutMajorAxis(int, int, int[], int[])/layoutMinorAxis(...), 축 요구 사항을 계산하는 calculateMajorAxisRequirements(int)/calculateMinorAxisRequirements(int), 자식 뷰를 얻는 getChildView(int), 여백을 설정하는 setInsets(short, short, short, short) 등이 있습니다. getAxis()로 타일링되는 축을 알 수 있습니다.

더 알아보기 (Learn more)

Java 공식 API