Android RelativeLayout cambiar altura de forma programática

Intento cambiar la altura del diseño programmatically. Tengo dos botones. En un botón cambio mi posición de la disposición y el segundo botón intento recibir la posición de la bruja de la reserva que era la primera vez.

<RelativeLayout android:id="@+id/popaplayout" android:layout_width="fill_parent" android:layout_height="200dp" > 

Este es un diseño de mi y en el primer botón que escribí

 RelativeLayout.LayoutParams parms = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.FILL_PARENT, RelativeLayout.LayoutParams.FILL_PARENT); parms.addRule(RelativeLayout.BELOW, R.id.movies_title_layout); scrollpopap.setLayoutParams(parms); scrollpopap.setScrollingEnabled(true); 

Y el segundo botón

 RelativeLayout.LayoutParams rel_btn = new RelativeLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, 300); rel_btn.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); scrollpopap.setLayoutParams(rel_btn); scrollpopap.setScrollingEnabled(false); 

En el archivo xml escribí altura 200dp y programmatically 300 y hay altura diferente. ¿Cómo puedo escribir guardar altura en forma programática?

Si alguien sabe la solución por favor me ayude gracias

Primero convertir 200 dp en píxeles –

 final float scale = getContext().getResources().getDisplayMetrics().density; int pixels = (int) (200 * scale + 0.5f); 

A continuación, establezca programatically,

 RelativeLayout.LayoutParams rel_btn = new RelativeLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, pixels); rel_btn.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); scrollpopap.setLayoutParams(rel_btn); scrollpopap.setScrollingEnabled(false); 

Convertir DP a PX de esta manera.

 final float scale = getContext().getResources().getDisplayMetrics().density; int px = (int) (100 * scale + 0.5f); // replace 100 with your dimensions 

Establecer Algún layout_gravity de diseño relativo. Y Cambiar altura y anchura por código java.

 RelativeLayout rl = (RelativeLayout) findViewById(R.id.yourId); rl.getLayoutParams().height = px; rl.getLayoutParams().width = px; 
 RelativeLayout layout = (RelativeLayout) findViewById(R.id.yourlayout_id); // Gets the layout params that will allow you to resize the layout LayoutParams params = layout.getLayoutParams(); params.height = 320; params.width = 320; 

Si tiene la intención de cambiar la altura relativa del diseño, a continuación, esta ayuda.

 RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.yourId); relativeLayout.getLayoutParams().height = 100; relativeLayout.getLayoutParams().width = 100; 
  • Cómo añadir una vista de desplazamiento al diseño de Android
  • Cómo desplazamiento mediante programación de un ScrollView a inferior
  • OverScrollBy no siempre se recupera en la plataforma Lollipop (5.x)
  • Android ScrollView fillViewport no funciona
  • ScrollView agrega un espacio grande en la parte inferior
  • Cómo agregar ScrollView a GLSurfaceview en Opengl ES2.0 en Android
  • No se puede desplazar en el fragmento de diálogo
  • Cómo extender AdapterView para comportarse como LinearLayout llenado dinámicamente por un adaptador
  • Cargar más datos cuando ScrollView se desplaza hacia abajo
  • Android 5.0 Datepicker en scrollview no funciona (no se desplaza meses)
  • Cambiar ScrollView scrollBarStyle mediante programación en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.