eliminar la regla de RelativeLayout antes de la API 17


78

Antes de API 17, ¿cómo elimino una regla de un diseño? Tengo un RelativeLayout con varios niños. El RelativeLayout es el diseño principal de mi actividad. Después de agregar la regla mediante programación usando

RelativeLayout.LayoutParams layout = (LayoutParams) theChild.getLayoutParams();
layout.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);

Necesito eliminar la regla mediante programación más adelante. ¿Cómo haría esto asumiendo una API anterior a la 17?

Respuestas:


162

Ah, lo averiguo.

RelativeLayout.LayoutParams layout = (LayoutParams) myChild.getLayoutParams();
layout.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 0);

Entonces, realmente no hay removeRule hasta API 17.


9
Esta respuesta no me quedó clara de inmediato. En el código de Android, removeRule (regla) básicamente hace lo mismo que addRule (regla, 0), por lo que la respuesta que se muestra aquí funciona.
greg7gkb

1
@Cote Mounyo pero ahora este código como se requiere en level19 API cómo hacerlo en el nivel API por debajo o igual a 16
Erum

0

Dependiendo de la situación, en mi caso creé LayoutParamsreglas nuevas y luego agregué las reglas que eran necesarias

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.