我正在尝试在线性布局的底部锚定卡片视图,该布局在作为其父级的线性布局和Scrollview作为其根视图的协调器布局下,但它仅锚定在线性布局的底部,即在协调员布局下。我发现问题是由于LinearLayout是协调器布局的父级,但如何解决这个问题?
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.shareooh.shareooh.ScrollingActivityProfile">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
>
<LinearLayout
android:id="@+id/profileSignUpHeaderLayout"
android:layout_width="match_parent"
android:layout_height="230dp"
android:layout_gravity="center"
android:background="@drawable/gradient_background"
android:orientation="vertical"
>
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/circular_image_profile"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_gravity="center"
android:layout_margin="@dimen/default_margin"
android:src="@drawable/profile_image"
/>
<TextView
android:id="@+id/nameTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="@dimen/default_margin"
android:text="@string/username"
android:textColor="@android:color/white"
android:textSize="@dimen/textSizeName"
android:textStyle="bold"
/>
<SeekBar
android:id="@+id/seekBarProfileLevel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
/>
</LinearLayout>
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/large_margin"
android:layout_marginRight="@dimen/large_margin"
app:layout_anchor="@id/profileSignUpHeaderLayout"
app:layout_anchorGravity="bottom|center"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="3"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1.4"
android:background="@android:color/white"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/default_margin"
android:text="4"
android:textColor="@android:color/darker_gray"
android:textSize="@dimen/largeTextSize"
android:textStyle="bold"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="YOU PAY"
android:textColor="@color/colorAccent"
android:textSize="@dimen/mediumTextSize"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="@dimen/default_margin"
android:layout_marginLeft="@dimen/extra_large_margin"
android:layout_marginRight="@dimen/extra_large_margin"
android:ems="@integer/max_ems_description"
android:gravity="center"
android:text="@string/lorem_ipsum"
android:textColor="@color/colorPrimary"
android:textSize="@dimen/smallDescription"/>
</LinearLayout>
<TextView
android:layout_width="5dp"
android:layout_height="match_parent"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight=".2"
android:background="@android:color/darker_gray"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1.4"
android:background="@android:color/white"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/default_margin"
android:text="6"
android:textColor="@android:color/darker_gray"
android:textSize="@dimen/largeTextSize"
android:textStyle="bold"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="YOU SHARE"
android:textColor="@color/colorAccent"
android:textSize="@dimen/mediumTextSize"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="@dimen/default_margin"
android:layout_marginLeft="@dimen/extra_large_margin"
android:layout_marginRight="@dimen/extra_large_margin"
android:ems="@integer/max_ems_description"
android:gravity="center"
android:text="@string/lorem_ipsum"
android:textColor="@color/colorPrimary"
android:textSize="@dimen/smallDescription"/>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</android.support.design.widget.CoordinatorLayout>
<include
layout="@layout/content_scrolling_profile_signup"/>
</LinearLayout>
</ScrollView>
答案 0 :(得分:0)
使用坐标布局作为顶部根元素而不是scrollview并将锚应用于cardview。如果您有更多内容,请在坐标布局内使用scrollview,并在scrollview内使用linearlayout。