java - how - constraintlayout lib



Android:사용자 정의 컨테이너보기 만들기 (1)

안드로이드에서 2 개의 자식 뷰 컨테이너 역할을하는 사용자 정의 뷰 (또는 더 나은 레이아웃)를 만들려고합니다. 컨테이너를 세로로 두 개 분리하여 위아래로 스 와이프 할 수있는 막대로 생각하십시오.

나는 XML의 레이아웃처럼 그것을 사용하여 그 안에 어떤 뷰도 중첩 할 수 있도록하고 싶다. 나는 그런 것을 생각했다.

            <view class="at.calista.quatscha.views.SwipebarLayout"
            android:id="@+id/sbl"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">

            <!-- Top View -->
            <Button android:text="Top" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>

            <!-- Bottom View -->
            <Button android:text="Bottom" android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</view>

이 xml은 두 개의 버튼 사이에 스 와이프 가능한 막대를 제공합니다.

그러나이를 수행하는 방법을 모르겠다. LinearLayout atm을 확장하고 있지만, 아이들에게 자신의 위치를 ​​지정하는 방법을 알려주려면 어떻게해야합니까?

https://src-bin.com


Answer #1

대신에

<view class="at.calista.quatscha.views.SwipebarLayout"
        android:id="@+id/sbl"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

당신이 사용할 수있는

<at.calista.quatscha.views.SwipebarLayout
        android:id="@+id/sbl"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

SwipebarLayout 클래스가 LinearLayout을 확장하면 코드에서 LinearLayout 태그를 사용하는 것과 똑같은 방식으로 동작하고 LinearLayout에서와 똑같이 자식을 배치 할 수 있습니다. 물론 LinearLayout에서 일부 메서드를 재정의 한 경우 기능이 해당 부분과 다릅니다.





view