如何阻止此视图填满屏幕?

时间:2018-05-24 14:49:55

标签: android android-layout android-constraintlayout

我的应用程序应该具有以下布局(即这三个事物垂直堆叠):

Chart Name (String)
Tools (a pager with 3 tabs)
ChartGrid

图表名称是一个设置大小,然后我希望下面的工具使用尽可能多的空间,然后ChartGrid应占用其下方的剩余空间。

总体布局如下(我已经取出了不相关的位):

<android.support.constraint.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/textViewChartName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <fragment
        android:id="@+id/fragment_tools"
        android:name="com.path.appname.fragments.ToolsFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@+id/textViewChartName"
        tools:layout="@layout/fragment_tools" />

    <fragment
        android:id="@+id/fragment_chartGrid"
        android:name="com.path.appname.fragments.ChartGridFragment"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintBottom_toTopOf="@+id/au_adView"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/fragment_tools"
        app:layout_constraintVertical_chainStyle="spread"
        app:layout_constraintVertical_weight="5"
        tools:layout="@layout/fragment_chart_grid" />

    <com.google.android.gms.ads.AdView
        android:id="@+id/au_adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_gravity="bottom"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintBottom_toBottomOf="parent" />

</android.support.constraint.ConstraintLayout>

fragment_tools.xml如下:

<android.support.constraint.ConstraintLayout
    android:id="@+id/chart_tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.constraint.ConstraintLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/toolsWrapper"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <android.support.design.widget.TabLayout
            android:id="@+id/tabs"
            android:layout_height="wrap_content"
            android:layout_width="match_parent"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintStart_toStartOf="parent"/>

        <android.support.v4.view.ViewPager
            android:id="@+id/pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/tabs" />
        </android.support.constraint.ConstraintLayout>

</android.support.constraint.ConstraintLayout>

和fragment_chartGrid是:

<android.support.constraint.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintBottom_toBottomOf="parent">

    <com.path.appname.models.ChartGrid
        android:id="@+id/chartGrid"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        />

</android.support.constraint.ConstraintLayout>

我遇到的问题是这些工具占据了所有的屏幕空间,所以我看到了图表名称,然后是工具,然后没有看到 - 只有白色空间(如果我添加背景颜色到工具,然后我看到背景颜色)。如果我取出工具,我可以再次看到网格。

我哪里错了?

编辑:这就是我想要的东西(我将工具涂成橙色只是为了显示我的意思;显然我还需要对图表中的数字进行整理!):

what I want to see

这就是我得到的:

what I'm getting

0 个答案:

没有答案