framelayout 예제

이 예제에서는 프레임 레이아웃의 콘텐츠 안에 두 개의 서로 다른 뷰를 포함 하 고 겹쳐 서 있도록 합니다. 우리가 언급해야 할 중요한 점은 FrameLayout이 layout_gravity 특성을 통해 자식 요소의 위치를 제어 할 수있는 기능을 제공한다는 것입니다. 이 예제에서는 프레임 레이아웃을 사용하여 자신의 Android 응용 프로그램을 만드는 방법을 보여 드리는 간단한 단계를 안내합니다. 우리가 안녕하세요 세계 예제 장에서 만든 안드로이드 응용 프로그램을 수정하려면 다음 단계를 따르십시오 – 우리의 예에서 우리는 당신이 추가하고 응용 프로그램에서 FrameLayout을 처리 할 수있는 방법을 보여 줄 것입니다. 이 튜토리얼에서 우리는 안드로이드 프레임 레이아웃과 안드로이드 절대 레이아웃으로 다이빙을 합니다. 이것은 레이아웃 시리즈의 두 번째 자습서, 이전 우리는 안 드 로이드 LinearLayout 및 상대 레이아웃 예제를 살펴보았습니다. Android에서 프레임 레이아웃은 프레임 레이아웃 내부에 단일 보기만 표시하기 위해 서로의 상단에 포함된 뷰 인스턴스의 위치를 지정하는 데 사용되는 ViewGroup 하위 클래스입니다. 프레임 레이아웃을 프로그래밍 방식으로 만들고 구성할 수도 있습니다. 이 작업은 프레임 레이아웃 클래스(android.widget.FrameLayout)를 사용하여 수행됩니다. 프레임 레이아웃.LayoutParams 클래스에서 프레임별 매개 변수를 찾을 수 있습니다. 또한 layout_height 및 layout_width와 같은 일반적인 레이아웃 매개 변수(android.view.ViewGroup.LayoutParams)와 여백 매개변수(ViewGroup.MarginLayoutParams)는 여전히 프레임 레이아웃 오브젝트에 적용됩니다. 앞에서 보여 드린 것처럼 setContentView() 메서드를 사용하여 레이아웃 리소스를 직접 로드하는 대신 Java에서 화면 내용을 빌드한 다음 모든 컨트롤 내용을 포함하는 부모 레이아웃 개체를 제공하여 자식 보기로 표시해야 합니다.

setContentView() 메서드를 설정합니다. 이 경우 상위 레이아웃은 프레임 레이아웃이 됩니다. 예를 들어 다음 코드는 프로그래밍 방식으로 설명한 동일한 레이아웃을 재현하는 방법을 보여 줍니다. 특히 액티비티가 프레임 레이아웃을 인스턴스화하고 하나의 ImageView 컨트롤을 배치하고 그 다음에 두 개의 TextView 컨트롤을 onCreate() 메서드에 배치합니다. 전체 화면을 제어하기 위해 크기가 조정된 프레임 레이아웃이 있다고 가정해 보겠습니다(즉, layout_width 및 layout_height 특성은 모두 match_parent로 설정되어 있음). 그런 다음 이 프레임 레이아웃에 세 개의 자식 컨트롤을 추가할 수 있습니다: 예를 들어, 단추와 함께 조각을 갖고 싶을 때 는 프레임 레이아웃에 조각을 넣고 뷰의 불투명도를 0에서 1로 설정합니다. 및 1은 뷰가 완전히 불투명하다는 것을 의미합니다. 당신이 볼 수 있듯이 우리가 사라그 가시성을 구성하기 때문에 텍스트가 화면에 표시되지 않습니다. 그러나 XML 레이아웃 파일에서 정의하지 는 않았지만 다른 TextView가 나타났다는 것을 알 수 있습니다.

소스 코드에서 FrameLayout에 새 TextView 요소를 추가하기 때문에 이러한 일이 발생합니다. 이 상수는 API 수준 28에서 더 이상 사용되지 않았습니다.