Adición dinámica de vistas a RelativeLayout dentro de ScrollView

Estoy intentando agregar dinámicamente varios RelativeLayouts en un LinearLayout que está dentro de un RelativeLayout, que está dentro de un ScrollView. Cuando la altura total de todas las vistas excede el tamaño de la pantalla del teléfono, todas las vistas se muestran correctamente. Pero cuando el tamaño total de las vistas agregadas dinámicamente no es suficiente para llenar la pantalla, sólo se muestra el primer elemento RelativeLayout y los demás no se muestran en la pantalla. Estoy realmente sin esperanza y no entiendo por qué.

Aquí está el código para poblar dinámicamente vistas dentro del diseño lineal:

LinearLayout commentsLayout = (LinearLayout) findViewById(R.id.comments_layout); LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); for(Comment c: commentsList) { RelativeLayout layoutItem = (RelativeLayout) inflater.inflate( R.layout.list_item_comment, null, false); TextView tv = (TextView) layoutItem.findViewById(R.id.textView); ImageView iv = (ImageView) layoutItem.findViewById(R.id.imageView); // set tv's text // set iv's image and onclicklistener, nothing fancy here, everything goes well commentsLayout.addView(layoutItem); } 

Aquí está list_item_comment.xml:

 <RelativeLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/white" > <ImageView android:id="@+id/imageView" android:layout_width="50dip" android:layout_height="50dip" android:layout_alignParentLeft="true" android:layout_marginTop="10dp" android:layout_marginLeft="10dp" /> <TextView android:id="@+id/textView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_margin="10dp" android:textSize="16sp" android:layout_toRightOf="@id/imageView" /> </RelativeLayout> 

Y aquí está el archivo xml para esta actividad:

 <RelativeLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/main_layout" > ... <ScrollView android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:fillViewport="true" android:id="@+id/scrollView" > <RelativeLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/relativeContainer" > ... <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/comments_layout" /> </RelativeLayout> </ScrollView> </RelativeLayout> 

Y las capturas de pantalla:

Sin diseños suficientes: (INCORRECTO, necesita mostrar 3 comentarios)

Incorrecto

Con suficientes diseños: (CORRECTO, pantalla llena)

Corriga uno

Sólo necesito mostrar los tres comentarios en el primer caso: / Gracias de antemano.

One Solution collect form web for “Adición dinámica de vistas a RelativeLayout dentro de ScrollView”

En lugar de fill_parent , trate de cambiar el layout_height del <RelativeLayout> de su list_item_comment.xml a wrap_content .

Además, ¿por qué necesita otro <RelativeLayout> dentro de su <ScrollView> del xml de su actividad. El LinearLayout es suficiente para hacer lo que desea que su actividad se vea. Tal vez usted puede quitarlo.

  • Cómo cambiar el tamaño de la imagen al pulsar
  • Android: Maneja el botón Atrás de la vista personalizada
  • ¿Cómo escondo un WebView?
  • Actualizar la posición de la vista debajo de otra vista en Android
  • Androide ProgressDialog: configuración de vista personalizada en lugar de mensaje - ¿este trabajo?
  • Cómo obtener la vista en la lista de vista ampliable en mi caso no muestran la lista ampliable que muestra en blanco
  • Obtener el valor de color de píxel de un punto en una vista de Android que incluye un lienzo con respaldo de mapa de bits
  • Ampliar vidrio para EditText como en iphone: ¿es posible dibujar fuera de una vista?
  • Cambiar la selección de texto a rtl en lugar de predeterminar ltr
  • Ver - buscando un evento como en (Ver) Destruido
  • ExpandableListView - la indicación de grupo es extensible para ajustarse al tamaño del texto
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.