Reputation: 752
Im am having a parent layout RelativeLayout
inside ScrollView
which contains several child layouts and a child layout (i.e preview_wrapper) at end of RelativeLayout
which fills the it with match_parent
LayoutParam
and contains a Background with alpha color and its clickable
and focusable
is set to true so that no view inside the parent layout is clickable. but it not working for me i am unable to see the last child fill the parent layout bring to front. however when I remove ScrollView
its working perfect.. but i need to bring it inside ScrollView
as I make the preview_wrapper
outside the ScrollView i am unable to scroll the layout.
Structure:
<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>
Upvotes: 1
Views: 526
Reputation: 6892
Then make the RelativeLayout
into a FrameLayout
and rearrange the child layout as shown here
<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>
Upvotes: 1