我已经搜索了有关此问题的解决方案,但无法找到任何解决方案。我有一个片段,位于recyclerView上方。我在这里使用的片段是一个来自库的片段。我必须使用recyclerview显示View。我已经完成了它的工作正常。但新要求是必须使用recyclerview滚动。因此,我遵循this解决方案。它看起来很好,但它没有显示整个片段如果我使用布局高度来匹配父或包装内容。但是,如果我为该片段使用像height = 300dp这样的值,那么它就会显示出来。但我不想要它必须扩展和展示任何人都可以帮我解决这个问题吗?
这是我的fragment.xml
<fragment android:id="@+id/chart"
class="com.shinobicontrols.charts.ChartFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
和recyclerviewLayout.xml
<LinearLayout
android:id="@+id/listViewLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:animateLayoutChanges="true">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView1"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
由于
答案 0 :(得分:1)
如果你想要两者都在同一个屏幕上,你应该做类似的事情:
<RelativeLayout
android:id="@+id/relativeViewLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true">
<fragment android:id="@+id/chart"
class="com.shinobicontrols.charts.ChartFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:below="@+id/chart"/>
</RelativeLayout>
如果这不是您想要的,我不明白这个问题。
答案 1 :(得分:1)
请尝试使用这样的..它对我有用
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment android:id="@+id/chart"
class="com.shinobicontrols.charts.ChartFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:below="@+id/chart"/>
</RelativeLayout> </ScrollView>
答案 2 :(得分:1)
更简单的解决方案,我知道它太晚了但也许有人可以使用我的答案:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment android:id="@+id/chart"
android:layout_alignParentTop="true"
class="com.shinobicontrols.charts.ChartFragment"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_gravity="center" />
<android.support.v7.widget.RecyclerView
android:layout_below="@+id/chart"
android:id="@+id/recyclerView1"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
现在我已将高度设置为100dp,只是为了向您显示它正确呈现,但您必须将其设置为包装内容(只要您的片段具有正确呈现的实际高度)
希望这会有所帮助:)