Android layout with LinearLayout and orientation v

2019-09-21 18:12发布

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

enter image description here

1条回答
Deceive 欺骗
2楼-- · 2019-09-21 18:32

Hope this helps.

Please remove your FrameLayout from your .xml file

Remove this,

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"    
android:padding="20dp">

</FrameLayout>

because it is parent of other layout.

Other thing is you are including Framelayout inside Linearlayout so it will not take effect properly.

查看更多
登录 后发表回答