1

Я искал решение по этой проблеме, но не смог найти решение. У меня есть фрагмент, который выше recyclerView. Фрагмент, который я использую здесь, - это фрагмент, который был получен из библиотеки. Я должен показать это представление с помощью recyclerview. Я сделал это, работая отлично. Но новое требование - это прокручивать с помощью recyclerview. Поэтому по этой причине я последовал за решением this. Кажется, что это хорошо, но не показывает весь фрагмент. Если я использую высоту макета для соответствия родительскому или обертовому контенту. Но если я использую значение, например height = 300dp для этого фрагмента, то его отображение. Но я не хочу, чтобы он расширялся и показывал, может ли кто-нибудь помочь мне решить эту проблему?Фрагмент над recyclerview не отображается

это мой 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

. Можете ли вы добавить код Java? – mustafasevgi

+0

@mustafasevgi Извините, у меня нет разрешения на это. – ImGenie

ответ

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> 

Если вы этого не хотите, я не понял вопроса.

+0

Если вам нравится это, Если содержимое фрагмента заполняет экран, вы не можете видеть recyclerview, и вы даже не можете прокручивать. Это мой вопрос. – ImGenie

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> 
+0

после этого ... используйте пользовательский менеджер макетов для recyclerview .. надеюсь, что решит вашу проблему – Vennila

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, чтобы показать вам, что она отображается правильно, но вы должны установить ее для обертывания содержимого (если ваш фрагмент имеет фактическую высоту, он будет отображаться правильно)

enter image description here

Надеюсь, что это поможет :)

Смежные вопросы