studio setsupportactionbar programacion móviles fragments desarrollo curso con comunicar aplicaciones activity android android-scrollview android-relativelayout

setsupportactionbar - Android RelativeLayout cambia la altura programáticamente



manual de programacion android pdf (4)

Intento cambiar la altura de diseño mediante programación. Tengo dos botones En un botón, cambio mi posición de diseño y el segundo botón, trato de recibir la posición de guardar cuando era la primera vez.

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

Este es mi diseño y en el primer botón 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 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í la altura 200dp y programáticamente 300 y hay diferentes alturas. ¿Cómo puedo escribir guardar altura en programáticamente?

Si alguien sabe solución por favor ayúdame gracias


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 algunos layout_gravity del diseño relativo. y Cambiar altura y ancho por código java.

RelativeLayout rl = (RelativeLayout) findViewById(R.id.yourId); rl.getLayoutParams().height = px; rl.getLayoutParams().width = px;


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 programáticamente,

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);


Si desea cambiar la altura de RelativeLayout , entonces esta ayuda.

RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.yourId); relativeLayout.getLayoutParams().height = 100; relativeLayout.getLayoutParams().width = 100;


Utilizar esta

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;