2017-07-27 33 views
1

林时遇到内部ScrollView父布局RelativeLayout其中包含几个子布局和在RelativeLayout结束一个子布局(即preview_wrapper)与match_parentLayoutParam填充它,并包含背景与alpha颜色和它的clickablefocusable被设置为true,以便在父布局内​​没有视图是可点击的。但它不适合我,我无法看到最后一个孩子填写父母布局带到前面。然而,当我删除ScrollView它的工作完美..但我需要把它带进ScrollView,因为我使preview_wrapper以外的ScrollView我无法滚动布局。无法使子布局的充实内心滚动型其父

结构:

<ScrollView> 
    <RelativeLayout> 
     <LinearLayout> 
     </LinearLayout> 

     <!-- the layout I want to bring in front of above linear layout and cover its parent --> 
     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@color/alpha_white" 
      android:clickable="true" 
      android:focusable="true" 
      android:id="@+id/preview_wrapper" 
      ></RelativeLayout> 


    </RelativeLayout> 

</ScrollView> 

XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" android:layout_height="match_parent" 
    android:background="@color/white" 
    > 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:weightSum="4" 
      android:layout_below="@+id/car_pager" 
      android:orientation="horizontal" 
      android:id="@+id/action_wrap" 
      > 
      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_weight="1" 
       android:layout_height="wrap_content" 
       android:id="@+id/action_save" 
       android:background="@drawable/btn_action_selector" 
       android:clickable="true" 
       android:focusable="true" 
       android:paddingTop="20dp" 
       android:paddingBottom="20dp" 

       > 
       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:orientation="vertical" 
        > 
        <ImageView 
         android:layout_width="15dp" 
         android:layout_height="15dp" 
         android:src="@drawable/ic_star_hollow" 

         android:tint="@color/white" 
         android:id="@+id/ic_save" 
         android:layout_gravity="center" 
         /> 
        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:textSize="12sp" 
         android:textColor="@color/white" 
         android:text="@string/save" 
         android:textAllCaps="false" 
         android:layout_marginTop="10dp" 

         /> 
       </LinearLayout> 



      </RelativeLayout> 

      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:id="@+id/action_email" 
       android:layout_weight="1" 
       android:background="@drawable/btn_action_selector" 
       android:clickable="true" 
       android:focusable="true" 
       android:paddingTop="20dp" 
       android:paddingBottom="20dp" 
       > 
       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:orientation="vertical" 
        > 

        <ImageView 
         android:layout_width="15dp" 
         android:layout_height="15dp" 
         android:src="@drawable/ic_email_action" 
         android:layout_centerInParent="true" 
         android:tint="@color/white" 
         android:layout_gravity="center" 
         /> 

        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:textSize="12sp" 
         android:textColor="@color/white" 
         android:text="@string/contact" 
         android:textAllCaps="false" 
         android:layout_marginTop="10dp" 
         /> 


       </LinearLayout> 

      </RelativeLayout> 

      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:id="@+id/action_price_alert" 
       android:layout_weight="1" 
       android:background="@drawable/btn_action_selector" 
       android:clickable="true" 
       android:focusable="true" 
       android:paddingTop="20dp" 
       android:paddingBottom="20dp" 
       > 
       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:orientation="vertical" 
        > 

        <ImageView 
         android:layout_width="15dp" 
         android:layout_height="15dp" 
         android:src="@drawable/ic_electric" 
         android:layout_centerInParent="true" 
         android:tint="@color/white" 
         android:id="@+id/price_alt_btn" 
         android:layout_gravity="center" 
         /> 

        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:textSize="12sp" 
         android:textColor="@color/white" 
         android:text="@string/price_alert" 
         android:textAllCaps="false" 
         android:layout_marginTop="10dp" 
         /> 

       </LinearLayout> 

      </RelativeLayout> 

      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:id="@+id/action_flag" 
       android:layout_weight="1" 
       android:background="@drawable/btn_action_selector" 
       android:clickable="true" 
       android:focusable="true" 
       android:paddingTop="20dp" 
       android:paddingBottom="20dp" 

       > 

       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:orientation="vertical" 
        > 

        <ImageView 
         android:layout_width="15dp" 
         android:layout_height="15dp" 
         android:src="@drawable/ic_flag_hollow" 
         android:layout_centerInParent="true" 
         android:tint="@color/white" 
         android:layout_gravity="center" 
         /> 
        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:textSize="12sp" 
         android:textColor="@color/white" 
         android:text="@string/abuse_report" 

         android:layout_marginTop="10dp" 
         android:textAllCaps="false" 
         /> 

       </LinearLayout> 
      </RelativeLayout> 

     </LinearLayout> 
     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@color/alpha_white" 
      android:clickable="true" 
      android:focusable="true" 
      android:id="@+id/preview_wrapper" 
      ></RelativeLayout> 

    </RelativeLayout> 


    </ScrollView> 

</RelativeLayout> 

回答

1

然后使RelativeLayoutFrameLayout和重新排列子布局如下所示

<ScrollView> 
    <FrameLayout> 

     <!-- the layout I want to bring in front of above linear layout and cover its parent --> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@color/alpha_white" 
      android:clickable="true" 
      android:focusable="true" 
      android:id="@+id/preview_wrapper" 
      ></RelativeLayout> 

     <LinearLayout> 
     </LinearLayout> 
    </FrameLayout> 

</ScrollView> 
+0

感谢我一直在努力奋斗吧 –

+0

不客气@MehvishAli –