I have a two fragments and they are hosted on activity that has following layout
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="20dp"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/frameContainer1"
android:orientation="horizontal"
></LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/frameContainer"
android:orientation="vertical"
></LinearLayout>
</LinearLayout>
</FrameLayout>
and frameContainer1
is like this
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/frameContainer"
>
<ImageView
android:layout_width="400dp"
android:layout_height="40dp"
android:id="@+id/image1"/>
</LinearLayout>
and other container is like this
<?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">
<ImageView
android:layout_width="100dp"
android:layout_height="100dp"
android:id="@+id/image1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/name1"/>
</RelativeLayout>
The problem is the appearance is completely out. The frameContainer1
is appearing on top on action bar. what I want is frameContainer1 appear before the other container vertically.
How can I fix it?
Update Small image in the screenshot is frameContainer1 content
Hope this helps.
Please remove your
FrameLayout
from your .xml fileRemove this,
because it is parent of other layout.
Other thing is you are including
Framelayout inside Linearlayout
so it will not take effect properly.