Android: establece el margen entre los botones con LayoutParams

Quiero generar automáticamente los botones verticalmente con un margen inferior de 20px entre los botones. Intento fijar el margen con un objeto de LayoutParams, sin éxito.

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/regions_search" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="30dip" android:orientation="vertical" > </LinearLayout> @Override public void onCreate(Bundle savedInstanceState) { ... for (Region region : regionsList) { //create new button Button button = new Button(mContext); //set infos int id = Integer.parseInt(Long.toString((Long) region.getId())); button.setId(id); button.setText(region.getName() + "( " + region.getStores_nb() + " )"); //Layoutparams setting FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); params.setMargins(0, 0, 0, 20); button.setLayoutParams(params); myLinear.addView(button); } 

Como se puede ver en la imagen, no hay espacio entre las imágenes. Alguien sabe por qué? Gracias ! Introduzca aquí la descripción de la imagen

2 Solutions collect form web for “Android: establece el margen entre los botones con LayoutParams”

Puede probar esto:

 LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) button.getLayoutParams(); layoutParams.bottomMargin += 20; button.setLayoutParams(layoutParams); 

Trate de utilizar LinearLayout.LayoutParams lugar de FrameLayout.LayoutParams , como en su xml que está utilizando LinearLayout ..

 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); 
  • cómo establecer el relleno o el margen a la disposición lineal?
  • Restablecer LayoutParams a lo que se define en XML
  • Los parámetros de diseño de la vista cargada se ignoran
  • ¿Cómo se cambia el tamaño de un ImageView?
  • Cómo encontrar el área de texto (altura / ancho) de TextView de forma programática en android
  • Configuración de los parámetros de diseño en android
  • GetLayoutParams (). Width VS setMax / MinimumWidth () para ImageView
  • Ajuste automático de TextView para Android
  • android setLayoutParams para webview genera ERROR
  • Tostada personalizada en la parte superior de la pantalla
  • View.getLayoutParams (). Anchura que no funciona con el turrón
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.