2014-10-28 3 views
0

난 그냥 응용 프로그램 부싯깃처럼 스 와이프 카드의 효과를 구현하기 위해 노력하고 거짓 설정할 수 없습니다 clipchildren과 cliptopadding을 false로 설정했습니다. 어떤 생각? ????뷰 그룹 클립 아이들은

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical"> 

<com.wenchao.cardstack.CardStack 
    android:id="@+id/container" 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:padding="20dp" 
    android:clipChildren="false" <!--- false --> 
    android:clipToPadding="false" 
    android:layout_weight="3" 
    /> 


<RelativeLayout 

    android:layout_weight="1" 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:orientation="horizontal" 
    android:background="#FF00FF" 
    > 
    <Button 
     android:layout_centerHorizontal="true" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="B" 
     android:id="@+id/info" 
     /> 
    <Button 
     android:id="@+id/like" 
     android:layout_toLeftOf="@+id/info" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="A" 
     /> 
    <Button 
     android:id="@+id/dislike" 
     android:layout_toRightOf="@+id/info" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="C" 
     /> 

</RelativeLayout> 

, 아이 뷰의 buttom의가립니다 슬쩍 후

enter image description here

슬쩍 전에 :(

:

CardStack은 내 사용자 지정 컨테이너 레이아웃은 RelativeLayout의 XML을 확장하다

enter image description here

---------------- 편집 -----------------------

문제점을 발견했습니다. 선형 레이아웃에서는 마지막 자식이 항상 맨 위에 표시됩니다 (큰 z- 색인). 그래서 카드 스터 용기가 chirdren을 잡아 내지 않더라도 그 아이들은 여전히 ​​아래의 다음보기 밑에 표시됩니다. 따라서 상대 레이아웃으로 전환하는 것이 좋습니다.

하지만 RelativeLayout에는 높이 비율을 지정하는 데 유용한 "layout_weight"기능이 없기 때문에 실제로 원하지 않습니다. 따라서 상황은 Z- 인덱스를 쉽게 제어 할 수있는 방법 (선형 레이아웃에서는 불가능한 것)과 "layout_weight"기능 (선형 레이아웃에서만 가능)을 유지하고자하는 것입니다. 어떤 생각 ??

답변

0

왜 레이아웃 _ 가중치가 필요합니까? 탑 뷰가 모든 사용 가능한 공간을 채울 것으로 가정하고 있습니까? 지금은 화면을 4 분의 1로 나누고 있지만,보기 중 하나에서 크기를 설정할 수 있으면 문제가 해결됩니다.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 


    <RelativeLayout 
     android:id="@+id/button_container" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:paddingBottom="@dimen/large_bottom_padding" 
     android:background="#FF00FF" 
     > 
     <Button 
      android:layout_centerHorizontal="true" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="B" 
      android:id="@+id/info" 
      /> 
     <Button 
      android:id="@+id/like" 
      android:layout_toLeftOf="@+id/info" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="A" 
      /> 
     <Button 
      android:id="@+id/dislike" 
      android:layout_toRightOf="@+id/info" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="C" 
      /> 

    </RelativeLayout> 

    <com.wenchao.cardstack.CardStack 
     android:id="@+id/container" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"   <!-- Not really important --> 
     android:layout_alignParentTop="true"   <!-- Because of these lines --> 
     android:layout_above="@id/button_container" <!-- Because of these lines --> 
     android:padding="20dp" 
     android:clipChildren="false" <!--- false --> 
     android:clipToPadding="false" 
     /> 

</RelativeLayout