Mi RecyclerView y el artículo tienen ancho de match_parent pero el resultado es:
<view
class="android.support.v7.widget.RecyclerView"
android:layout_width="match_parent"
y artículos:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:id="@+id/ll_itm"
android:orientation="horizontal"
android:layout_width="match_parent"
completo:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:id="@+id/ll_itm"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="100"
android:gravity="right"
>
<Button
android:layout_width="0dp"
android:layout_weight="15"
android:layout_height="fill_parent"
android:text="ملاحظات"
android:id="@+id/button" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="20"
android:gravity="center"
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<com.getbase.floatingactionbutton.FloatingActionButton
android:layout_width="fill_parent"
android:layout_height="fill_parent"
fab:fab_plusIconColor="#ff56ff83"
fab:fab_colorNormal="@color/d_red"
fab:fab_colorPressed="#ff5c86ff"
fab:fab_size="mini"
fab:fab_icon="@drawable/ic_remove_white"
android:id="@+id/fab_rmv" />
<esfandune.ir.elmikarbordiardakan.other.CustomTxtView
android:layout_weight="25"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="0"
android:gravity="right|center_vertical"
android:id="@+id/txt_takhir_itm" />
<com.getbase.floatingactionbutton.FloatingActionButton
android:layout_width="fill_parent"
android:layout_height="fill_parent"
fab:fab_plusIconColor="@color/colorprimarylight"
fab:fab_colorNormal="@color/colorprimarydark"
fab:fab_colorPressed="@color/colorprimary"
fab:fab_size="mini"
fab:fab_icon="@drawable/ic_add_white"
android:id="@+id/fab_add" />
</LinearLayout>
</LinearLayout>
<Spinner
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10"
android:id="@+id/sp_nomre_itm"
android:entries="@array/degrees"/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10"
android:gravity="center"
>
<!--LinearLayout baraye ine ke nameshod fab ro weight behosh dad-->
<com.getbase.floatingactionbutton.FloatingActionButton
android:layout_width="fill_parent"
android:layout_height="fill_parent"
fab:fab_plusIconColor="#ff56ff83"
fab:fab_colorNormal="@color/d_green"
fab:fab_colorPressed="@color/d_orange"
fab:fab_size="normal"
fab:fab_icon="@drawable/ic_done_white"
android:id="@+id/fab_hazr" />
</LinearLayout>
<esfandune.ir.elmikarbordiardakan.other.CustomTxtView
android:layout_weight="5"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="100"
android:gravity="right|center_vertical"
android:id="@+id/txt_ghybtNumber_itm" />
<esfandune.ir.elmikarbordiardakan.other.CustomTxtView
android:layout_weight="30"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="عباسعلی ملاحسینی اردکانی"
android:gravity="right|center_vertical"
android:id="@+id/txt_title_itm"
android:layout_marginRight="10dp"
/>
<view
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10"
class="de.hdodenhof.circleimageview.CircleImageView"
android:id="@+id/view"
android:src="@drawable/mmrdf"
/>
</LinearLayout>
android
android-recyclerview
abbasalim
fuente
fuente
Dentro del método onCreateViewHolder (...) del adaptador donde está inflando la vista ... debe definir ViewGroup como padre. Esto lo obtendrá del primer parámetro del método onCreateViewHolder (...).
ver la línea de abajo en el segundo parámetro estoy pasando el ViewGroup. Esto hará coincidir automáticamente la vista con su padre:
/// el código completo está debajo
fuente
Estaba usando un
FrameLayout
conMATCH_PARENT
para ancho y estaba viendo el mismo comportamiento con unRecyclerView
+LinearLayoutManager
. Ninguno de los cambios anteriores funcionó para mí hasta que hice lo siguiente en laonCreateViewHolder
devolución de llamada:Claramente parece un error en (supongo) la implementación de RecyclerView.
fuente
intente esto cuando configure los parámetros de diseño para su artículo en el adaptador.
fuente
Había arreglado así. En mi caso, problema con el archivo de diseño de actividad porque estoy usando ConstraintLayout como diseño de actividad raíz. También podría ser el caso para usted.
fuente
En mi caso, el problema estaba en la
RecyclerView
declaración XML,layout_width
era 0dp, lo que significa match_constraints, cuando lo cambié amatch_parent
, los elementos comenzaron a llenar todo elRecyclerView
ancho:fuente
Resolví esto con:
Está reemplazando el
MATCH_PARENT
con el ancho real deRecyclerView
.fuente
Esto funcionó para mí.
reemplazar esto
por esto
fuente
No puedo ver su código completo, pero puedo adivinar que algunas de las vistas dentro de su LinearLayout son '
wrap_content
'. Debe hacer que uno o algunos de ellos se expandan al ancho completo usando 'android:layout_weight="1"
'actualización: tienes muchos redundantes
layout_weight
. Hazlos todos 'wrap_content
' y solo uno de ellos agregalayout_weight=1
, para el último CustomTextView. De esta manera, ocupará todo el espacio en blanco.fuente