将片段放在Listview下面

时间:2017-02-14 10:49:03

标签: android android-fragments layout

我正在努力使用Android布局。

我想创建一个线性布局,其中包含顶部的按钮,下一个列表视图,当显示列表视图的所有元素时,我想显示一个显示谷歌地图的片段。

这是我的Layout xml文件。在这种情况下,您只能看到片段和按钮,但不能看到列表视图

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="wrap_content"
              android:layout_height="fill_parent"
              android:paddingLeft="10dp"
              android:paddingRight="10dp"
              android:orientation="vertical"
        tools:context="de.mypackage.MyActivity">

    <Button
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:layout_weight="0"
            android:id="@+id/button_back"
            android:text="@string/back"
            />

        <ListView
                android:id="@+id/list"
                android:layout_height="fill_parent"
                android:layout_width="fill_parent"
                android:layout_weight="1"/>
                />

    <fragment
            android:id="@+id/fragement"
            android:name="de.mpackage.MapsFragment"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:layout_weight="0"
            tools:layout="@layout/fragment_maps"/>

</LinearLayout>

任何想法如何实现我的布局?

5 个答案:

答案 0 :(得分:1)

建议: 将您的根布局声明为 RelativeLayout

  

RelativeLayout是一个以相对方式显示子视图的视图组   位置。每个视图的位置可以指定为相对于   兄弟元素。

然后使用 android:layout_below

  

将此视图的上边缘定位在给定的锚点视图ID下方。   容纳此视图的上边距和锚视图的下边距。

    // Let's W1 a stuff from our list of stuffs

handleNextStuff:

    // Take a stuff
    I1;

    // Try W1'ing the stuff.
    while(!W1) {
        I2;

        // No way we can W1 this stuff, drop it and try the next one.
        if(W2)
            goto handleNextStuff;

        // A step closer to a W1'd stuff.
        I3;
    }

答案 1 :(得分:1)

Try this code

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="10dp"
    android:weightSum="1"
    android:paddingRight="10dp">

    <Button
        android:id="@+id/button_back"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/back" />

    <ListView
        android:id="@+id/list"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.5" />

    <fragment
        android:id="@+id/fragement"
        android:name="com.yougotag.supplierfieldagent.fragments.AboutFragment"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.5"
        tools:layout="@layout/fragment_about_app" />

</LinearLayout>

this will set both in half screen you can change ration of weights in layout.

答案 2 :(得分:0)

试试此代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="10dp"
    android:paddingRight="10dp">

    <Button
        android:id="@+id/button_back"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/back" />

    <ListView
        android:id="@+id/list"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

    <fragment
        android:id="@+id/fragement"
        android:name="com.yougotag.supplierfieldagent.fragments.AboutFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:layout="@layout/fragment_about_app" />

</LinearLayout>

答案 3 :(得分:0)

试试这个:

WITH query as
(
    select 1 as id, 6 as 'preval_max', 1 as 'then_result', 0 as 'end_result' union
    select 2 as id, 12 as 'preval_max', 1 as 'then_result', 0 as 'end_result'   
)
UPDATE Table1
SET PostVal = case when Table1.preval < query.preval_max then query.then_result else query.end_result end
FROM Table1
inner join query 
    on Table1.id = query.id

答案 4 :(得分:0)

我找到了一个希望它有所帮助的解决方案。 在我free的{​​{1}}而不是ListView我使用了height并为0dp添加了wrap_content

layout_weight=1