Warning: file_put_contents(/datas/wwwroot/jiajiahui/core/caches/caches_template/2/default/show.php): failed to open stream: Permission denied in /datas/wwwroot/jiajiahui/core/libraries/classes/template_cache.class.php on line 55

Warning: chmod(): Operation not permitted in /datas/wwwroot/jiajiahui/core/libraries/classes/template_cache.class.php on line 56
NestedScrollView内部的CardView在底部显示额外的空间 - 源码之家

NestedScrollView内部的CardView在底部显示额外的空间

问题描述:

我有一些布局问题。我在一个NestedScrollView内部放置一个cardView,完全在一个CoordinatorLayout内部。而且,它在底部添加了很多填充。请解释一下为什么会发生这种情况。我知道cardView在下面的L设备中使用额外的填充来显示圆角和阴影,但是它是否需要这么多的填充并且也仅在底部。NestedScrollView内部的CardView在底部显示额外的空间

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    tools:context="com.startup.practice.getplaced.activities.InfoEventDetails"> 
    <android.support.design.widget.AppBarLayout 
     android:id="@+id/info_event_details_appbar" 
     android:layout_width="match_parent" 
     android:layout_height="@dimen/content_image_height" 
     android:theme="@style/AppTheme.AppBarOverlay" 
     > 
     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/info_event_details_collapsing_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:fitsSystemWindows="true" 
      app:contentScrim="?attr/colorPrimary" 
      app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed" 
      app:expandedTitleMarginEnd="64dp" 
      app:expandedTitleMarginStart="48dp"> 
      <ImageView 
       android:src="@drawable/manhattan_college_logo" 
       android:scaleType="centerCrop" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       app:layout_collapseMode="parallax"/> 
      <View 
       android:layout_width="match_parent" 
       android:layout_height="@dimen/sheet_text_scrim_height_top" 
       android:background="@drawable/scrim_top" 
       app:layout_collapseMode="pin"/> 
      <View 
       android:layout_width="match_parent" 
       android:layout_height="@dimen/sheet_text_scrim_height_bottom" 
       android:layout_gravity="bottom" 
       android:layout_alignBottom="@+id/image" 
       android:background="@drawable/scrim_bottom"/> 
      <android.support.v7.widget.Toolbar 
       android:id="@+id/info_event_details_appbar_toolbar" 
       app:layout_collapseMode="pin" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       app:popupTheme="@style/AppTheme.PopupOverlay"/> 
     </android.support.design.widget.CollapsingToolbarLayout> 
    </android.support.design.widget.AppBarLayout> 
    <android.support.v4.widget.NestedScrollView> 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
     <android.support.v7.widget.CardView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"> 
      <RelativeLayout 
       android:layout_margin="@dimen/activity_horizontal_margin" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content"> 
       <TextView 
        android:id="@+id/info_event_details_date" 
        android:text="12th July" 
        android:layout_alignParentRight="true" 
        android:textSize="@dimen/date_text_size" 
        android:textColor="#90000000" 
        android:textStyle="bold" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        /> 
       <TextView 
        android:id="@+id/info_event_details_title" 
        android:layout_toLeftOf="@id/info_event_details_date" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="Attention! Students placed in Amazon." 
        android:textColor="#ab000000" 
        android:textSize="@dimen/title_text_size"/> 
       <View 
        android:id="@+id/info_event_details_divider_title_content" 
        android:layout_below="@id/info_event_details_title" 
        style="@style/Divider" 
        android:layout_marginTop="@dimen/activity_vertical_margin" 
        android:layout_marginBottom="@dimen/activity_vertical_margin" 
        /> 
       <TextView 
        android:id="@+id/info_event_details_desc" 
        android:layout_below="@id/info_event_details_divider_title_content" 
        android:textSize="@dimen/content_text_size" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" /> 
      </RelativeLayout> 
     </android.support.v7.widget.CardView> 
    </android.support.v4.widget.NestedScrollView> 
</android.support.design.widget.CoordinatorLayout> 
+0

CardView粘贴您的布局,请 – xAF

+0

尝试添加(填充=“0dp”)的布局(S ),看看是否有帮助 – Tasos

+0

这可能是[CardView在Pre-Lollipop上的每个边缘有额外的边距]的副本(http://*.com/questions/29068430/cardview-has-extra-margin-in-each - 如果是这样的话 - 检查[“哈克”解决方案](http://*.com/a/29148964/5908572) – xAF

曾经有过同样的问题,我固定它通过包装内FrameLayout

<android.support.v4.widget.NestedScrollView> 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     <android.support.v7.widget.CardView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"> 
      <RelativeLayout 
       android:layout_margin="@dimen/activity_horizontal_margin" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content"> 
       <TextView 
        android:id="@+id/info_event_details_date" 
        android:text="12th July" 
        android:layout_alignParentRight="true" 
        android:textSize="@dimen/date_text_size" 
        android:textColor="#90000000" 
        android:textStyle="bold" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        /> 
       <TextView 
        android:id="@+id/info_event_details_title" 
        android:layout_toLeftOf="@id/info_event_details_date" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="Attention! Students placed in Amazon." 
        android:textColor="#ab000000" 
        android:textSize="@dimen/title_text_size"/> 
       <View 
        android:id="@+id/info_event_details_divider_title_content" 
        android:layout_below="@id/info_event_details_title" 
        style="@style/Divider" 
        android:layout_marginTop="@dimen/activity_vertical_margin" 
        android:layout_marginBottom="@dimen/activity_vertical_margin" 
        /> 
       <TextView 
        android:id="@+id/info_event_details_desc" 
        android:layout_below="@id/info_event_details_divider_title_content" 
        android:textSize="@dimen/content_text_size" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" /> 
      </RelativeLayout> 
     </android.support.v7.widget.CardView> 
    </FrameLayout> 
</android.support.v4.widget.NestedScrollView> 
+0

谢谢。这工作。 –